在我开始使用Javascript之前,只需检查是否有办法在CSS中执行此操作!
在示例中,#fixed div会动态填充内容 - 因此我们永远不知道该div中的内容有多大。
#absolute div的开头必须始终在#fixed div下面呈现。 #absolute div也会动态填充冗长的内容,因此用户必须能够滚动该div中的内容,无论它有多大。
在不知道#fixed div的大小的情况下,是否有一种方法只使用CSS,我们可以将#absolute div的开头保留在#fixed div下面?
XHTML:
<div id="right">
<p>This div is just here to force a scrollbar.</p>
</div>
<div id="fixed">
<p>This div gets filled dynamically with content of varying length</p>
</div>
<div id="absolute">
<p>This div also gets filled dynamically with content of varying length,
and needs to stay underneath the div above.</p>
<p>This div will sometimes get so high that it stretches below the bottom of the page,
and because it's inside a fixed positioned div the user won't be able to read all of its content.</p>
</div>
CSS:
#fixed {
position:fixed;
border:2px solid green;
width:200px;
display:block;
background-color:white;
}
#absolute {
position:absolute;
border:2px solid red;
width:200px;
margin-top:90px;
z-index:-1;
}
#right {
position:absolute;
right:0px;
width:200px;
height:4000px;
border:2px solid blue;
}
答案 0 :(得分:2)
不知道#fixed的大小 div,有没有办法只使用CSS 我们可以将#absolute div的开头保留在#fixed div下面吗?
没有。 CSS无法帮助你。
absolute
/ fixed
元素是......
完全从正常流程中删除 ([并且]对后来的兄弟姐妹没有影响。)
和
绝对的内容 定位元素不会流动 任何其他方块
http://www.w3.org/TR/CSS21/visuren.html#absolute-positioning