CSS可见性规则

时间:2011-04-14 07:56:19

标签: css html-rendering

我尝试在Google上搜索此内容,但无济于事。

有人能指出一个很好的资源来解释CSS的渲染和可见性规则吗?或者如果它很简单,有人可以在这里写下来吗?

举个例子,假设我有两个大的div DIV_LARGE1DIV_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,则绝对定位优先于相对。但这是对的吗?准确的规则是什么?

1 个答案:

答案 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属性来解决此问题。