2011-11-17 6 views
0

Google 크롬 (버전 : 15.0.874.121m)에서 문제가 발생했습니다. 블록 너비가 0.99px (정확하게) 미만인 경우 정확하게 표시되지 않습니다.   - 내부 너비 본문.크롬의 폭이 좁음

샘플 코드 : http://jsfiddle.net/bDTgX/1/

동일한 코드가 파이어 폭스, 오페라, 인터넷 익스플로러에서 잘 작동 : 여기

<style> 
.frame { float: left; border: solid; } 
.frame div { width: 0.98px; overflow: hidden; } 
</style> 
<div class="frame"><div>Long text</div></div> 

그리고 라이브 데모입니다.

이유는 무엇입니까 (Chrome의 버그?) - 어떻게 해결 될 수 있습니까?

답변

1

나는이 정말 버그가 말할 것입니다,하지만 웹킷은 서브 픽셀의 메트릭을 반올림 얼마나입니다. 당신이 실수를 한 가정으로 내려 제로 반올림하면 ... 그것은 아래로 반올림있어 무엇, 모아 0.99를 고려하고 있다고

http://jsfiddle.net/bDTgX/9/

을 참고, 그것은 단지 모두 함께 무시됩니다. 따라서 .99px보다 작은 값은 무시되고 default는 auto입니다. 이것이 취하는 방식이 마음에 들지 않으면 max-width를 사용하십시오 : 그러면 그것은 0 px를 따릅니다. 그러나 반올림이 설정되면,이를 처리해야합니다. gecko (firefox)처럼 서브 픽셀 렌더링은 webkit에서 지원되지 않습니다.

+0

jQuery.animate ({width : 'toggle'})를 사용하려고 할 때 Webkit에 문제가 있다는 것이 이상하게 들리지만 다른 브라우저에서 OK를 작동하는 동안 Chrome에서 깜박임 및 글리치가 발생합니다. ('toggle'대신 1px를 사용하면 트릭을 할 수 있습니다). 이상한 행동입니다. 어쨌든 감사합니다! – NikitaBaksalyar

1

웹킷 및 분수 픽셀에 버그가 있습니다.

http://ejohn.org/blog/sub-pixel-problems-in-css/

+0

감사합니다. 그러나이 경우 0.98px는 1px 또는 0px로 반올림되어야하지만 정확하게 동일하지는 않습니다. 그러나 내부 내용의 너비에 반올림됩니다. 그리고 다른 부분 너비는 Chrome/Webkit에서 제대로 작동하는 것 같습니다. – NikitaBaksalyar