Это мой случай с сеткой 960:
<div class="kundregister_grid_full">
<div class="kundregister_grid_1">ID</div>
<div class="kundregister_grid_1">Namn</div>
<div class="kundregister_grid_1">Anv.Namn</div>
<div class="kundregister_grid_1">Email</div>
<div class="kundregister_grid_1">Roll</div>
<div class="kundregister_grid_1">Aktiv</div>
</div>
Это мой набор div, используемых в качестве структуры таблицы.
CSS говорит следующее:
.kundregister_grid_1 {
display: inline-block;
float: left;
margin: 0;
text-align: center;
}
.kundregister_grid_1 {
width: 140px;
}
Не обращайте внимания на шведское название. Я хочу, чтобы блоки отображались, даже если у них нет значений.
<div class="kundregister_grid_full">
<div class="kundregister_grid_1">ID</div>
<div class="kundregister_grid_1"></div>
<div class="kundregister_grid_1"></div>
<div class="kundregister_grid_1">Email</div>
<div class="kundregister_grid_1">Roll</div>
<div class="kundregister_grid_1">Aktiv</div>
</div>
Таким образом, в этом случае в двух столбцах нет «Namn» и «Avn.Namn». Однако при запуске этого в chrome они удаляются и больше не подталкивают другие div по порядку float:left
. Поэтому, если у меня есть категории в тех же блоках выше, значения будут помещены в неправильную категорию.
element.text(" ");
в jQuery и
появляется на странице.Попробуйте добавить
к пустым элементам.Я не понимаю, почему вы не используете
<table>
здесь? Они будут делать такие вещи автоматически.источник
<table>
== ПЛОХО.
популярного решения может вызвать проблемы в некоторых сценариях. Например, когда вы вычеркиваете (text-decoration: line-through;
) текст, штрих будет отображаться поверх
, тогда как на самом деле вам нужен просто пустой div.Небольшое обновление ответа @ no1cobla. Это скрывает период. Это решение работает в IE8 +.
источник
.class:after:empty
Простое решение для пустых плавающих div - это добавить:
таким образом вы можете сохранить функциональность float и заставить его заполнять пустое пространство.
Я использую этот метод в столбцах макета страницы, чтобы каждый столбец оставался на своем месте, даже если другие столбцы пусты.
Пример:
источник
min-height
это лучшее решениеwidth
. Однако это не мешает div иметь нулевую высоту. (попробуйте установить фон div, чтобы увидеть проблему). Поэтому & nbsp; это более общее решение. Также содержание: "." устраняет проблему нулевой высоты.Просто добавьте символ пробела нулевой ширины внутри псевдоэлемента
источник
Это один способ:
источник
content: "\200b";
использовать пространство нулевой ширины . Дополнительным преимуществом является то, что браузер не будет выбирать этот символ (например,CTRL+A
CTRL+C
будет вести себя так же).Ты можешь:
o Установите
.kundregister_grid_1
на:width
(илиwidth-min
) сheight
(илиmin-height
)padding-top
padding-bottom
border-top
border-bottom
o Или используйте псевдоэлементы :
::before
или::after
с:{content: "\200B";}
{content: "."; visibility: hidden;}
.o Или поместите
внутрь пустой элемент, но это иногда может привести к неожиданным последствиям, например. в комбинации сtext-decoration: underline;
источник
Почему бы просто не добавить «минимальную ширину» к вашему CSS-классу?
источник
работает, но это неправильно, я думаю, что w min-height: 1px;
источник
При использовании встроенного блока он будет вести себя как встроенный объект. поэтому нет необходимости размещать их рядом друг с другом на одной строке. И действительно, как сказал Рито, поплавкам нужно «тело», как им нужны размеры.
Я полностью согласен с Пеккой в использовании таблиц. Все, кто создает макеты с использованием div, избегают таблиц, как будто это болезнь. Но используйте их для табличных данных! Вот для чего они нужны. А в вашем случае я думаю они вам нужны :)
НО если вы действительно хотите того, чего хотите. Есть способ взлома css. То же, что и хак с плавающей запятой.
Добавьте его, и вы тоже настроены: D (Примечание: не работает в IE, но это поправимо)
источник
Если их нужно переместить, вы всегда можете просто установить минимальную высоту на 1 пиксель, чтобы они не рухнули.
источник
Создавая собственный набор тегов макета, я нашел другой ответ на эту проблему. Здесь предоставляется настраиваемый набор тегов и их классы CSS.
HTML
CSS
Ключевым моментом здесь является размер и заполнение блока.
источник