在旧的div上设置一个新创建的div

Mir*_*ror 1 html javascript css

我在容器里面有一堆div.内容div的位置是相对的,因为我希望它们出现在另一个之下,并且它们的高度是未知的.

这些div是在容器div中动态创建的(appendchild).现在,每个div出现在堆栈的末尾(底部),但我的要求是div也有一个"最新的第一个"选项,也就是说,每个新div出现在顶部,而不是在内容div的底部(如果用户在设置中选择"最新的第一个".

HTML:

<div class="container">
    <div id="div1" class="content">aaa<br>aaa</div>
    <div id="div2" class="content">bbb<br><br>bbb</div>
    <div id="div3" class="content">ccc</div>
    <div id="div4" class="content">ddd</div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

.container {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    border: 1px solid red;
}

.content {
    position: relative;
    top: 0px;
    left: 5px;
    width: 200px;
    height: auto;
    border: 1px solid blue;
    margin: 3px;
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/jk559/1/

所以我希望最终用户可见的顺序为:div4,div3,div2,div1.

我怎样才能做到这一点?(CSS/JS)

最好没有jquery.

谢谢你的建议!

Hir*_*ral 5

纯css解决方案:

使用flexbox来实现这一目标.

.container {
    display:flex;
    flex-direction:column-reverse;
    justify-content: flex-end;
    align-content: flex-end;
}
Run Code Online (Sandbox Code Playgroud)

这里更新了小提琴.

在此处阅读更多信息.