CSS 固定位置要素はビューポートのみを基準としていると理解しています。ただし、私が知る限り、「左」が指定されていない場合、デフォルトで 0 ではなく、コンテナ (この場合はメイン div) の左端になることを除いて、これは当てはまります。HTML:
<div id="main">
<div id="fixed"></div>
<div id="content"></div>
</div >
CSS:
#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
}
http://jsfiddle.net/2dudX/99/で実証されています。left:0 を指定すると、固定要素が画面の幅全体に表示されます。この動作の原因は何ですか? 左、右、上、または下を指定しない場合のデフォルトは何ですか?