Высота div: 0 проблема в IE - PullRequest
5 голосов
/ 28 мая 2010

до clear: both мой контент я использую это:

CSS:

.clr {
  clear: both;
  height: 0; /* i have tried 0.001em to */
  line-height: .001em;
  overflow: hidden;
}

HTML:

<div class="clr">&nbsp;</div>

отлично работает в каждом навигаторе. Но в IE 7 и 8 div все еще имеет высоту в несколько пикселей. Как я могу избежать этого?

Ответы [ 4 ]

8 голосов
/ 28 мая 2010

Это проблема со шрифтом IE.

Добавить

font-size: 0;

к вашей декларации CSS

4 голосов
/ 06 декабря 2011

Просто натолкнулся на это, и ответ, который дал Бен, имеет смысл, но он был неполным в декабре 2011 года на IE 7 (традиционная поддержка требует этого.

font-size:0; - хорошее начало, но изначально я этого не делал.

Вдоль этой мысли вы должны помнить о высоте линии. Если вы устанавливаете высоту строки выше в DOM, вероятно, из-за природы этих вещей, она наследуется (как это происходило со мной)

Если вы установили высоту строки для родителя, обязательно задайте ее явно для потомка, которого вы пытаетесь использовать для принудительной очистки:

font-size:0;
line-height:0;

-Brandt

0 голосов
/ 28 мая 2010

Использование пустых DIV для представления информации - это, как правило, плохая практика. Вы можете изменить CSS элементов, которые вы хотите очистить. Большую часть времени очистки можно заменить отключением использования inline-block. Смотри http://google.co.uk/notebook/public/06909424369135510368/BDROpQwoQ4-fhwfsj#SDRZLQgoQtfHkwfsj.

Rich

0 голосов
/ 28 мая 2010

Вы пытались использовать "легкую очистку" (или "clearfix") для очистки без наценки. Обычно это намного проще:

http://oncemade.com/renaming-and-extending-easy-clearing-aka-clearfix/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...