Одд.Я вижу некоторую логику в том, что происходит.Кажется, в качестве высоты используется line-height от предыдущего элемента.Если вы добавите это, например, непосредственно перед <br />
, как показано:
<div class="weird" /><br />
... и затем установите его высоту строки:
div.weird {
line-height: 0;
}
(jsFiddle здесь )
... тогда <br />
теряет свою высоту.
Итак, я бы предположил, что перенос строки "наследует" - хотя это скореенеправильное слово - высота предыдущего бита текста.Я не уверен, что это действительно так, но в этом есть смысл объяснений, которые я могу придумать.
Правда, я со всеми остальными - если вы не хотитеразрыв между строками, не используйте разрыв строки.В любом случае, если вы собираетесь использовать немного несемантично для очистки, я бы просто жил с этим и использовал <div>
;практические элементы веб-сообщества поймут и простят вас:)