Проблема с плавающей запятой в IE8 с CSS

Я уверен, что это должно было быть рассмотрено раньше, потому что я уверен, что я не первый, кто сделал это, но я не могу найти ответ. Я создаю эффект тени для <div>, используя повторяющиеся фоновые изображения. В двух нижних углах я использую маленькие изображения размером 9x5 пикселей. Я перемещаю их влево и вправо, и в Firefox и Safari они выглядят идеально. В IE8 (и, возможно, в других IE) они перемещаются слишком далеко влево и вправо примерно на 3 пикселя.

Ознакомиться с проблемой можно по адресу здесь. Это шаблон ebay для моей жены.

До сих пор я пытался установить display:inline, что было исправлением для аналогичных проблем IE6. Я также безуспешно пытался установить поля изображения и отступы на 0 пикселей.

Любые идеи?

Спасибо, Кэррейг.


person Community    schedule 10.09.2009    source источник


Ответы (2)


Просматривая вашу страницу, я обнаружил, что она по умолчанию находится в режиме причуд, что является вероятной проблемой, потому что, если я принудительно переведу ее в строгий режим, это, похоже, решит вашу плавающую проблему во всех случаях IE.

прочтите статью ppk здесь: http://www.quirksmode.org/css/quirksmode.html

он объясняет, почему это происходит и как это исправить :)

Надеюсь, поможет!

person Wayne Austin    schedule 10.09.2009
comment
Кто бы мог подумать... быть наказанным за правильное поведение. На самом деле я даже не думал вставлять строку doctype, учитывая, что это просто шаблон для ebay. - person ; 10.09.2009

Я думаю, что это как-то связано с тем, что элементы с плавающей запятой выходят за границы div, попробуйте вставить это, прежде чем закрывать родительский div:

<div style="clear: both; font-size: 1px; line-height: 0px;"> &nbsp;</div>
person Khodor    schedule 10.09.2009
comment
Спасибо. Я думал о чем-то в этом роде, но ваш код работал как шарм с копипастом только между элементами :) - person Sasho; 14.02.2013