スクロールバー ( プロパティ) を持つ外側のコンテナーを作成し、overflow-y
必要な背景を持つ小さなコンテンツ コンテナーを配置して、内側の要素と外側のスクロールバーの間のギャップがガターをシミュレートすることができます。
HTML
<div class="outer">
<div class="inner">
<!-- content goes here -->
</div>
</div>
CSS
.outer {
width:80%;
height:150px;
overflow-y:scroll;
}
.inner {
width:95%;
background:White;
}
デモ
width:95%
をmargin-right
値に置き換えることで、ガターの幅を固定することもできます。
margin-right:20px; /*20px gap between inner and scrollbar*/
デモ
background-clip
プロパティ セットを使用して要素にcontent-box
追加することで、単一の要素でこれを再現することもできpadding-right
ます。
.content {
width:80%;
height:150px;
overflow-y:scroll;
background:white;
background-clip: content-box;
padding-right:40px;
}
デモ
ただし、このアプローチに対する IE<=8 のサポートはありません。また、padding
値にはスクロールバーの幅を含める必要があります。そうしないと、非常に低いパディング値を使用すると、ガターがスクロールバーの下に隠れてしまいます。余分なパディングによってレイアウトが崩れる場合は、box-sizing
プロパティを に設定して修正できますborder-box
。