Вертикальный интервал в IE 7,8,9 в пределах деления - PullRequest
1 голос
/ 22 марта 2011

У меня есть тег div с несколькими другими элементами внутри, как показано ниже:

<div>
  <h3>Text</h3>
  <hr/>
  <ul>
    <li>Text</li>
  </ul>
  <hr/>
  <span>Text</span>
</div>

Между каждым отдельным элементом в div у меня установлены 0 отступов и полей для всех элементов (и это отражено в инструментах разработчика), однако во всех браузерах Internet Explorer имеется значительное пространство (примерно 4-6). пикселей) между каждым элементом. Я попытался установить html, body padding / margins равным 0, а также почти все остальные элементы над ним в иерархии DOM, однако интервал остается. Я также попытался свернуть HTML, чтобы не было новых строк или пробелов, однако это не решает проблему.

Любые предложения, в чем может быть проблема?

Ответы [ 2 ]

1 голос
/ 22 марта 2011

Полагаю, проблема в элементе hr в IE ... он не рассматривается как другие элементы HTML. Существует множество решений ... но я не смог заставить их работать, если вы хотите уменьшить поля.

При этом ... методом проб и ошибок мне удалось получить отрицательные поля только для IE, который работал. Не уверен, что он будет работать в IE <6, IE7, IE> 8 (не могу проверить).

Минимальный фрагмент кода CSS:

<style>
   hr {padding:0;margin:0;height:1px;border:none;color:#000;background-color:#000;}
</style>
<!--[if lte IE 8]>
<style>hr {display:block;margin:-7px 0;}</style>
<![endif]-->

... Я ограничил его до IE8 и меньше, так как в интернете ходят слухи, что в IE9 все изменится ... посмотрим, как только это можно будет проверить :). Обратите внимание, что если вы хотите изменить цвет линии, вам нужно изменить значения color и background-color (в зависимости от браузера используется один или другой: ref )

Протестировано и работает в:

  1. IE 8.0.6001 ...
  2. IE 6.0.2900 ...
  3. FF 3.6.15
  4. Cr 10.0.648.134

(на WinXP)

0 голосов
/ 22 марта 2011

Пробел, который вы видите, не является отступом, полем или границей.Вы видите записанный символ "", который существует между каждым тегом.

Опции:

1) Установите все элементы для отображения: блок или дисплей: встроенный блок.2) Пишите все теги один за другим, удаляя все символы ПРОБЕЛ или ВВОД

...