我尝试在Google上搜索此内容,但无济于事。
有人能指出一个很好的资源来解释CSS的渲染和可见性规则吗?或者如果它很简单,有人可以在这里写下来吗?
举个例子,假设我有两个大的div DIV_LARGE1
,DIV_LARGE2
,它们彼此不包含,还有一个小div DIV_SMALL
。在DIV_SMALL
中定义DIV_LARGE1
后,我可以看到DIV_LARGE1
内部的DIV_LARGE2
,但与DIV_LARGE2
共享的区域隐藏在DIV_SMALL
下方}。我在页面呈现后显示display:inline
(通过设置其DIV_LARGE2
)(点击一下),因此在DIV_LARGE1
之后,position:relative
跟在HTML中DIV_LARGE*
无关紧要码。
什么优先于什么?由于我的较小div具有position:absolute
而其他div({{1}})都具有{{1}},因此我可以推断如果未在其中定义div,则绝对定位优先于相对。但这是对的吗?准确的规则是什么?
答案 0 :(得分:0)
Phelios是正确的,您遇到的问题与z-index属性有关。 这是SmashingMag的一篇很棒的文章,详细解释了它:http://www.smashingmagazine.com/2009/09/15/the-z-index-css-property-a-comprehensive-look/
对于tl; dr - 定位元素按照它们放置在html代码中的顺序堆叠,因此默认情况下,第一个大div内的div_small将始终堆叠在第二个大div下面。您可以通过在css中设置小div的z-index属性来解决此问题。