Error!! Could not load style.css
SAVE THE DEVELOPERS <!> 버그 많고 비효율적인
IE6을 업그레이드 해주세요!
※ 이 배너는 IE6에서만 표시됩니다.


    

미디어로그

display가 inline-block일때 overflow를 hidden으로 하면 text-align속성이 무시됩니다.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<style>
#test{
display:inline-block;
width:400px;
height:30px;
background-color:#eee;
overflow:hidden;
text-align:center;
}
</style>
</head>
<body>
<div id="test">
정렬될 글자입니다.
</div>
</body>
</html>

이렇게 소스를 주면 브라우저 별로 결과는 이렇게 됩니다.

normal

IE,Opera,Chrome에서의 결과.. 오페라로 올렸지만 다 똑같습니다.

firefoxcase

Firefox에서 결과. text-align속성이 무시되었습니다.


파이어폭스도 보면 은근히 이러한 버그 많은거 같습니다. 하진 FF2때만해도 inline-block을 지원안했었으니깐요.. mozilla전용 속성을 써야 했었습니다.

그래서 해결방법은

1. overflow:hidden을 없앱니다. 만약 안의 요소가 너비를 벗어나게 되면 안되겠죠..
2. 아래와 같이 display:block속성을 가진 element를 하나 삽입하여 너비와 높이를 지정해 줍니다. 의미없는 마크업이 들어가지만 확실한 해결책이네요..

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<style>
#test{
display:inline-block;
width:400px;
height:30px;
background-color:#eee;
overflow:hidden;
text-align:center;
}

#wrap{
width:400px;
height:30px;
}
</style>
</head>
<body>
<div id="test">
<div id="wrap">정렬될 문자입니다.</div>
</div>
</body>
</html>


저작권 안내
  • 이 글의 내용 전체를 복사해서 다른 곳에 게시하는 것을 금합니다.
  • 이 글의 주소를 알려주거나 링크하는 것만 허용합니다.
  • 이 글의 일부를 인용하는 것은 허락하되, 반드시 원 저작자출처를 표기해야 합니다.
  • 이 글을 영리목적으로 이용할 수 없습니다.
  • 위 조건들을 만족한다면 별도의 허락을 받지 않아도 됩니다.
  • 자세한 사항 및 부칙, 예외 등은 여기를 참고하세요.


엮인글보내기 주소 : http://jugug.net/trackback/184 관련글 쓰기

악플은 NO! 스팸도 NO! 여러분의 댓글이 글의 가치를 높입니다.