Использует ли <div> spacers плохую практику?

Неправильно ли использовать теги <div> для выражения пробелов между элементами? Если да - почему это так?

Вот пример:

<div class="panel">
    <!-- Content -->
</div>

<div class="spacer"></div>

<div class="panel">
    <!-- Content -->
</div>

CSS:

div.spacer
{
    font-size: 0; 
    height: 10px;
    line-height: 0;
}

Ответы

Ответ 1

Это плохо, если вы можете добавить маржу к content. В противном случае это лучший элемент HTML для спейсеров.

Ответ 2

Да, его плохая - ненужная разметка. Вместо этого используйте margin-top/margin-bottom.

Ответ 3

Это неземное и ненужное.

Добавив:

padding-bottom: 10px;

или

margin-bottom: 10px;

к вашему объявлению CSS div.panel вы можете сэкономить несколько символов (таким образом снижая затраты на пропускную способность) и иметь более чистый код, который выражает , что означает не то, как вы хотите, чтобы он выглядел.

Ответ 4

Это не хороший стиль кодирования для веб-материалов.

Все (блочные) элементы содержат все необходимое для создания paddings/layout. Как и другие упоминаемые ppl: используйте поля, paddings и т.д. - модель коробки.

Слишком много разметки = больше проблем с позиционированием чего-то = ненужной разметки.