Предисловие : Извините, если этот вопрос должен был быть размещен на сайте-партнере.Сейчас их так много, что трудно сказать, что еще подпадает под юрисдикцию SO.
Проблема : У меня проблема с последовательными <div>
элементами.Иногда между ними есть магический отступ / отступ, и я не могу понять, почему.
IE7 Волшебная ошибка дополнения http://img689.imageshack.us/img689/6239/ie7bug.png
Как видите, между моими пробеламиdiv заголовка контейнера и div телаПозвольте мне объяснить, как настроен мой DOM / CSS:
HTML
<div class="Product-IconView">
<div class="PIV_TopCap"></div>
<div class="PIV_Body">
...
</div>
</div>
Простая настройка контейнера / дочернего элемента div, ничего сложного.
CSS
Верхняя крышка:
.PIV_TopCap
{
margin: 0px;
padding: 0px;
height: 10px;
line-height: 1px; /* For IE so the text doesn't make the div higher */
overflow: hidden;
background-repeat: no-repeat;
background-image: url(/Images/Controls/IconView/PIV-Regular-Top.png);
}
Корпус:
.PIV_Body
{
height: 266px;
padding-left: 10px;
padding-right: 10px;
background-repeat: repeat-y;
background-image: url(/Images/Controls/IconView/PIV-Regular-Body.png);
}
AsВы можете видеть, довольно простой CSS тоже, ничего особенного.Внутри тела находится еще одна серия <div>
предметов, следуя тому же принципу, что и этот div (контейнерный div, сложенные потомки).Это не демонстрирует странное заполнение, подобное этому.
Я использовал инструмент разработчика в IE9 (с включенными стандартами IE7), чтобы осмотреть DOM и посмотреть, что может быть причиной этого (например, увеличение поля вверх).или что-то еще)
Как вы можете видеть здесь:
Подсветка тела http://img844.imageshack.us/img844/3448/ie7bug01.png Подсветка сверху http://img192.imageshack.us/img192/46/ie7bug02.png
Границы div целы и правильны.
Заключение Это очень странная ошибка, я видел ее в более раннем проекте и тоже не смог ее выяснить.Это действительно единственная проблема миграции IE7, с которой я столкнулся в этом проекте.Насколько я знаю, я очень близко следую Стандартам HTML (я знаю, что IE в некоторых случаях не уважает их, но я планирую сделать это как можно лучше).
Вопросы к вам:
- Что я должен искать, что может вызвать это?
- Я что-то не так делаю?Если так, как я могу это исправить?
- Есть ли более простой / лучший способ сделать это?
- Есть ли что-то очевидное, что мне не хватает?
Также
Если вам нужны разъяснения или дополнительная информация, пожалуйста, не стесняйтесь оставлять их в комментариях, я отвечу на них, когда увижу их.(Опубликуйте это поздно вечером в пятницу: o).