Как автоматически складывать divs вертикально внутри родителя?
Вот что я пытаюсь выполнить...
![]()
- "parent" имеет позицию: relative
- "div 1-3" имеют положение: absolute
Однако, когда я это делаю, мне приходится присваивать определенные "верхние" значения в моем CSS. Таким образом, div 1 может быть верхним: 50px, div 2 будет top: 150px, а div 3 будет top: 225px;
Есть ли способ убедиться, что div продолжают стекать внутри родителя без назначения верхних значений и/или абсолютного позиционирования?
Ответы
Ответ 1
A div
должен уже отображаться как блок и принимать полную "строку". Вот некоторые HTML и CSS, чтобы привести пример, сравнить его с вашим кодом:
http://jsfiddle.net/mWcWV/
<div id="parent">
<div class="child">Foo</div>
<div class="child">Bar</div>
<div class="child">Baz</div>
</div>
Ответ 2
Элементы Div являются блочными элементами, что означает, что они будут принимать полную строку и что любой элемент рядом с ними пропустит строку.
Просто выполните:
<div></div>
<div></div>
<div></div>
Если это не сработает, вам, вероятно, нужно будет отобразить их: inline-block;
Ответ 3
Должно быть прямо:
HTML:
<div class="container">
<div class="red"></div>
<div class="blue"></div>
<div class="green"></div>
</div>
CSS
.container {
position: relative;
width: 500px;
height: 500px;
background-color: #ffbf00;
}
.red {
background-color: #f00;
width: 200px;
height: 150px;
margin: 5px auto;
}
.blue {
background-color: #0f0;
width: 200px;
height: 150px;
margin: 5px auto;
}
.green {
background-color: #00f;
width: 200px;
height: 150px;
margin: 5px auto;
}
Отметьте fiddle.
Ответ 4
В css
используется файл...
div
{
display : block;
}
Что даст строка прерывания для каждого блока div
, и эта функция по умолчанию и не использует технику relative
- absolute
.
Ответ 5
Просто удалите абсолютное позиционирование. Центрируйте divs с помощью margin:auto
, а затем укажите любые вертикальные поля, которые вам нравятся.
Ответ 6
Вы можете указать margin для внутреннего div.