为什么';T CSS固定定位只考虑视口吗?
据我所知,CSS固定位置元素仅与视口相关。但是,据我所知,这是正确的,除非“left”未指定,它不会默认为0,而是默认为其容器的左边缘-在本例中,是main div。 HTML:为什么';T CSS固定定位只考虑视口吗?,css,width,css-position,fixed,Css,Width,Css Position,Fixed,据我所知,CSS固定位置元素仅与视口相关。但是,据我所知,这是正确的,除非“left”未指定,它不会默认为0,而是默认为其容器的左边缘-在本例中,是main div。 HTML: <div id="main"> <div id="fixed"></div> <div id="content"></div> </div > 展示在。如果我指定left:0,固定元素将运行屏幕的宽度。是什么导致了这种行为?如果不
<div id="main">
<div id="fixed"></div>
<div id="content"></div>
</div >
展示在。如果我指定left:0,固定元素将运行屏幕的宽度。是什么导致了这种行为?如果不指定左、右、上或下,默认设置是什么?您看到的行为是正确的 如果将
position
属性设置为absolute
或fixed
的值,并且未指定偏移量,则元素将定位到静态位置,即它将使用position:static
所处的位置
但是,不同之处在于,具有绝对/固定位置的元素将从正常文档流中取出,而与偏移量值无关(自动或明确指定)
参考:
具体而言,以下部分(我的解释):
如果“左”和“右”是“自动”而“宽度”不是“自动”,则将“左”设置为静态位置,然后求解“右”
如果要了解偏移对高度的影响,请参见以下内容:#main{
width:80%;
margin-left:auto;
margin-right:auto;
}
#fixed{
position:fixed;
width:100%;
height:25px;
background:yellow;
}
#content{
width 100%;
height:300px;
background:red
}