IE7 «порадовал» меня необъяснимым глюком. Без видимой причины вдруг пункты в нумерованном списке (ol) стали нумероваться одним и тем же первым номером. Видимой причины такого поведения не было, пришлось искать методом исключения. Причина нашлась, и выглядела она так:
li{ min-height:1.2em; }
Это правило потребовалось для Фаерфокса, который «схлопывает» пустые строки в списке (только номера друг на друга наезжают). Предполагалось, что администратор сайта имеет право делать в списке пустые пункты, значит, должны быть пустые строки. С номерами. Пустые строки появились, а седьмой ИЕ перестал нумеровать список. Пришлось написать хак специально для него, родимого:
li{ min-height:auto; }
Надо сказать, что шестой и восьмой ИЕ глюк своего собрата не разделяют. А я так и не поняла, какую связь он нашёл между высотой строки и её номером в списке.
4 комментария на «Глюки и хаки: ie7»
Николай (2 комментария)
Проблема в том что каждый layout имеет свой счетчик. У меня сейчас это был zoom:1; У вас min-height
Княгиня (661 комментарий)
Ваш ответ интригующе не закончен.
Каким образом min-height связана со счётчиком?
Николай (2 комментария)
В IE (во всяком случае в старых) есть мифическое невидимое свойство у элементов hasLayout. Включается оно min-height (и подобными) или overflow: hidden или zoom:1 и еще какими-то свойствами. Вообщем это мифическое hasLayout порой помогает устранять проблемы в IE если элемент неправильно выглядит — не так как во всех браузерах (тут как повезет), или например если включить hasLayout к display:inline, то объект станет inline-block (ибо просто inline-block нету такого значения у display).
Итак в вашем случае, вы включали min-height (что включало hasLayout), а в моем zoom:1. Я применял это свойство для каждого , а это через какую то ж… в IE создает индивидуальный счетчик для каждого элемента))) В итоге везде 1-1-1-1. Вроде так и оказалось
Княгиня (661 комментарий)
О, спасибо. Очень интересно. Я про hasLayout слышала, но внятного описания в стандартах не нашла и по сию пору не считала нужным знакомиться ближе. Правда, в моём случае у списка была нумерация вроде VII-VII-VII-VII — это дополнительно сбило с толку и заставило проверять варианты без римских цифр и с единицы. Ну, и понятно, что шестой ИЕ не понимает min-height, потому и не сбивал нумерацию. Видимо, у восьмого этой напасти уже нет.