как я могу сделать все divs попадающими на ту же строку и заполнить div # 2 пробелом между левым плавающим div # 1 и правым поплавком div # 3? Div заполнить пробел между 2 divs
ответ
Вы можете использовать display: table
для такого рода реализации (примечание это не с помощью таблиц для разметки):
html,
body {
margin: 0;
padding: 0;
}
.wrap {
display: table;
width: 100vw;
}
.one {
display: table-cell;
height: 50px;
width: 20%;
background: red;
}
.two {
display: table-cell;
height: 50%;
width: 60%;
background: cornflowerblue;
}
.three {
display: table-cell;
background: lime;
height: 50px;
}
<div class="wrap">
<div class="one"></div>
<div class="two"></div>
<div class="three"></div>
</div>
Обратите внимание, как я не установил ширину на последнем элементе, но это заполнение остальное пространство доступно?
Спасибо, даже лучшее решение, когда таблицы поддерживаются всеми браузерами! – user3519221
Вот фиктивная реализация:
<div id="l"></div>
<div id="r"></div>
<div id="c"></div>
<style>
#l {
float: left;
width:30%;
}
#r {
float: right;
width: 30%;
}
#c {
margin: 0 auto;
width: 40%;
}
</style>
Но что, если первый и последний div должны иметь ширину, заданную пикселями, а не процентом? – user3519221
@ user3519221 Если ширина контейнера установлена вами (например, 1024px или 960px), вы можете вычислить ее аналогичным образом (30% от ширины контейнера до 2 div и 40% от ширины контейнера до 1 центрального div). Если нет, то вы можете использовать javascript для вычисления ширины экрана и применения такой же логики выше. – mehulmpt
Может быть flex поможет, вот JSFiddle.
HTML
<div class="parent">
<div class="div1"></div>
<div class="div2"></div>
<div class="div3"></div>
</div>
CSS
.parent {
display: -webkit-flex;
display: flex;
}
.div1 {
width: 30px;
height: 30px;
background: #FFCC99;
}
.div3 {
width: 30px;
height: 30px;
background: #FCF305;
}
.div2 {
-webkit-flex: auto;
flex: auto;
height: 30px;
background: #CCFFCC;
}
Спасибо, это то, что я искал! – user3519221
@ user3519221: Просто будьте осторожны с flexbox, поскольку некоторые считают, что он еще не готов к производству [из-за совместимости браузера] (http://caniuse.com/#search=flexbox), среди нескольких других причин ... – jbutler483
- 1. Удалить пробел между divs
- 2. Сделайте div заполнить пробел
- 3. удалить пробел между divs или tiling divs
- 4. CSS 1px пробел между divs
- 5. 2 divs заполнить горизонтальное пространство
- 6. Как сделать плавающие divs заполнить пробел
- 7. Bootstrap заполнить пробел между cols
- 8. Пробел между элементами div
- 9. Создание divs заполнить содержащий div?
- 10. Как удалить пробел между вложенными divs
- 11. Почему между этими двумя divs есть пробел?
- 12. Пробел/пробел между заголовками 1 и 2
- 13. Материал Дизайн Lite пробел между divs
- 14. Пытается равномерно распределить элементы в div, чтобы заполнить пробел между
- 15. нужны DIV, чтобы заполнить пробел между двумя дивы
- 16. Как заполнить высоту между div?
- 17. Анимация между 2 divs
- 18. Пробел между divs на IE и Firefox
- 19. Заполнить пробел
- 20. Пробел, вставленный между строками Div
- 21. Удалить лишний пробел в отношениях между divs
- 22. Удалить пробел между тегами div
- 23. Пробел между двумя тегами Div
- 24. Как заполнить пространство между div вертикально
- 25. Дублирование записей, чтобы заполнить пробел между датами
- 26. Пробел между родительским div и дочерним div?
- 27. Пробел между видео div и текстом div
- 28. заполнить div с divs в строке (css)
- 29. Как сделать группу divs заполнить содержащую div
- 30. Вставить пробел между 2 echo
Пожалуйста, добавьте свой код html и css для этого простого примера – Huangism