How do I automatically stack divs vertically inside a parent?

久未见 提交于 2019-12-03 06:46:12

问题


Here's what I am trying to accomplish...

  1. "parent" has position:relative
  2. "div 1-3" have position:absolute

However, whenever I do this, I find myself having to assign specific "top" values in my CSS. So div 1 might be top:50px, div 2 would be top:150px, and div 3 would be top:225px;

Is there a way to make sure the divs continue to stack inside the parent without assigning top values and/or absolute positioning?


回答1:


A div should already display as a block and take up a full "row". Here is some HTML and CSS to give an example, compare it to your code:

http://jsfiddle.net/mWcWV/

<div id="parent">

    <div class="child">Foo</div>
    <div class="child">Bar</div>
    <div class="child">Baz</div>

</div>



回答2:


Should be straight:

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;
}

Check this fiddle.




回答3:


Div elements are block elements, which means that they will take a full row and that any element next to them will skip a line. Just do:

<div></div>
<div></div>
<div></div>

If that does not work, you probably need to put them in display: inline-block;




回答4:


In css file use...

div
{
    display : block;
}

Which will give a break line for each div block and that feature is by default and don't use relative - absolute technique.




回答5:


Just remove absolute positioning. Center the divs using margin:auto and then provide whatever vertical margins you like.




回答6:


You can give margin to inner div.



来源:https://stackoverflow.com/questions/19284923/how-do-i-automatically-stack-divs-vertically-inside-a-parent

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!