私はレスポンシブ レイアウトに取り組んでおり、ウィジェットを固定/スティッキーのままにしたいと考えています。つまり、ページを下にスクロールしてもウィジェットが追従します。
簡略化された HTML:
<div class="page">
<div class="content"></div>
<div class="sidebar">
<div class="widget1"></div>
<div class="widget2"></div>
</div>
</div>
CSS:
.page {
width:96%;
max-width:1000px;
margin:0 auto;
}
.content {
width:65%;
}
.sidebar {
width:28%;
float:right;
}
.widget1 {
position:fixed;
padding:7.15%; /* 20px of 280px */
z-index:10;
}
問題: widget1
を追加することでフローから除外されposition:fixed
ます。これにより、パディングの割合が本文から計算され、レイアウトが完全に台無しになります。フローから削除されたため、サイドバーの幅を 100% 占有することもなくなりました。
私が必要とするもの:(パディングwidget1
のパーセンテージで)の全幅に収まるようにしsidebar
ます。
私が見つけた最も近い解決策はwidth:inherit
、固定要素を追加することを提案しています。これはうまく機能しますが、親の幅がパーセンテージではなくピクセルで設定されている場合のみです。また、パディングを追加する必要があるという事実にも役立ちません。
洞察や提案をいただければ幸いです。私は CSS ソリューションを好みますが、jQuery の使用に反対しているわけではありません。
それが役に立てば、私は Twenty Ten に基づくレスポンシブ テーマに取り組んでいます。サイトはこちら: http://odin.reaktortest.no/hvorfor-velge-fixit/
固定しておきたいベージュのボックスです( #iwajax_contact_widget-2
)。