БЕЗ ФЛЕКСБОКСА И ГРИДОВ, нужна бОльшая поддержка браузеров
3 inline блока шириной по 32% (если задавать чтобы было почти ровно 33%, один из блоков уже переходит на другую строку). Как сделать чтобы блоки были равноудалены друг от друга в пределах контейнера?
Как один из вариантов для ie8+
<div style="display:table;width:100%;">
<div style="display:table-cell;vertical-align:middle;width:33.3%">контент</div>
<div style="display:table-cell;vertical-align:middle;width:33.3%text-align:center">контент</div>
<div style="display:table-cell;vertical-align:middle;width:33.3%text-align:right;">контент</div>
<div>
Можно через функцию calc()
. CSS-переменные использованы чисто для иллюстрации, можно вставлять число, равное количеству колонок вручную.
:root {
--columns-count: 4; /* это число должно совпадать с количеством колонок */
}
* {
box-sizing: border-box;
}
div {
padding: 1em;
display: inline-block;
width: calc(100% / var(--columns-count));
}
div + div {
border-left: 1px solid;
}
<div>1</div><div>2</div><div>3</div><div>4</div>
UPD. Свойство поддерживается ИЕ, но не поддерживается Сафари.
Воспользуйтесь свойством text-align-last
. Оно похоже на text-align
, но действует на последнюю строку текста. С его помощью можно растянуть по ширине текст, в котором одна единственная строка.
text-align-last: justify;
Строка выравнивается по ширине. Если в последней строке только одно слово, то оно будет выравнено по левому краю.
.justify-inline-blocks {
background: #ccc;
margin: 12px 0;
padding: 6px 9px;
text-align-last: justify;
}
.item {
background: #666;
color: #fff;
display: inline-block;
padding: 6px 9px;
vertical-align: top;
}
<div class="justify-inline-blocks">
<div class="item">item</div>
</div>
<div class="justify-inline-blocks">
<div class="item">item</div>
<div class="item">item</div>
</div>
<div class="justify-inline-blocks">
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
</div>
<div class="justify-inline-blocks">
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
</div>
<div class="justify-inline-blocks">
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
</div>
Три блока(display: inline-block
) в ряд с шириной 33.3%.
.container {
width: 600px;
height: 250px;
font-size: 0;
}
.container__item {
width: 33.3%;
height: 100%;
display: inline-block;
}
.container__item-red {
background: red;
}
.container__item-blue {
background: lightblue;
}
.container__item-green {
background: green;
}
<div class="container">
<div class="container__item container__item-red"></div>
<div class="container__item container__item-blue"></div>
<div class="container__item container__item-green"></div>
</div>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Мне интересно, есть ли возможность построить div с нерегулярными фигурами, что-то,аналогичные картам (например, Гренландия, Европа, Африка)
Я экспериментировал с CSS, пытаясь создать 3d box, в котором можно выбрать передний план фигуры с помощью javascriptОн просто меняет имя класса box divs и использует...
Как поменять тему в Sublime Text 3 ? А то уже глаза кровью наливаются от розового текста HTML-документа :(