ヘッダーなどに半透明の背景と backdrop-filter を組み合わせ、背後だけをぼかしたガラスのような質感を作る
backdrop-filter: blur() は要素の後ろにあるものだけをぼかす。半透明の背景色と合わせると、固定ヘッダーが読みやすく今っぽくなる。
どんな問題を解決するか / いつ使うか
固定ヘッダーやモーダルの背面で、下の内容が透けて文字が読みにくい。かといって不透明にすると重く見えるときに。
やり方
css
.site-header {
position: sticky;
top: 0;
background: rgb(255 255 255 / .7); /* 半透明 */
-webkit-backdrop-filter: blur(12px) saturate(1.4);
backdrop-filter: blur(12px) saturate(1.4);
border-bottom: 1px solid rgb(0 0 0 / .06);
}
/* 未対応環境では不透明に近づけて読みやすさを守る */
@supports not (backdrop-filter: blur(1px)) {
.site-header { background: rgb(255 255 255 / .95); }
}注意点
- 背景の透明度が高すぎると、ぼかしても文字が読みにくい。文字のコントラストを必ず確認する。
- 大きな面積に多用すると描画が重くなることがある(特に古いスマホ)。
- Safari では
-webkit-付きも書いておくと安心。 - 多用するとありがちな見た目になるので、使う場所を絞る。
- コード例は一般的な書き方で補ったもの(元の投稿はテキストのみ)。
出典
- 投稿者: @wokobo_net
- 投稿: @wokobo_net · 2026-10-14
- 収集日: 2026-10-16(JST、10/15・10/16分の巡回をまとめて実施)