コンテンツへスキップ

CSS filter & backdrop-filter ジェネレーター

プロパティを filter と backdrop-filter から選び、プリセットか 8 つの値で効果を調整します。プレビューを確認しながら、そのまま貼り付けられる宣言をコピーできます。

ブラウザ内でローカルに実行
· filter · backdrop-filter · 視覚効果
操作パネル
ライブステージ
VoriToolsCSS Studio
CSS をエクスポート

8 つのコントロールで filter の宣言を組み立てる

このワークベンチは、明るさ・コントラスト・彩度・グレースケール・セピア・色相回転・ぼかし・不透明度という 8 つの関数から 1 つの filter 宣言を組み立てます。まずプロパティを選びます。filter は要素そのものに、backdrop-filter は要素の背後にあるものに効果を描画します。あとはコントロールを動かすと、プレビューがその場で更新されます。

出力パネルには完成した宣言が入ります。filter なら 1 行、backdrop-filter なら Safari に必要な -webkit- 接頭辞付きの 2 行です。コピーして自分のルールに貼り付けてください。処理はブラウザー内で完結し、オフラインでも動きます。

  1. CSS property で filter か backdrop-filter を選びます。backdrop-filter は透けて見える面でしか効果が見えないため、プレビューには半透明のパネルが用意されています。
  2. プリセット(Vivid / Monochrome / Warm / Frosted glass)から始めるか、8 つの値を自分で設定します。どれかの値を編集すると、プリセットは Custom に戻ります。
  3. 値を調整しながらライブステージを確認します。入力のたびにプレビューが描き直され、右上の表示が現在のプロパティ名を示します。
  4. 出力パネルを確認します。初期値のままの関数は出力から除かれるので、ぼかしだけの効果は filter: blur(4px) のように短く出力されます。
  5. Copy CSS を押して宣言をコピーし、自分のスタイルシートに貼り付けます。Reset で全値を初期状態に戻せます(Frosted glass ではプロパティも backdrop-filter に切り替わります)。

filter と backdrop-filter の違い

filter と backdrop-filter は別のプロパティ

filter は要素とその子孫・テキストを含めた描画結果に適用されます。backdrop-filter は要素自体には触れず、背後のピクセルだけを加工します。そのためガラス効果は、背景が半透明で初めて見えるようになります。

対応状況も同じではありません。Safari は今も -webkit-backdrop-filter が必要で、出力パネルが 2 行書くのはそのためです。未対応のエンジンは宣言を無視して通常どおり描画するので、ガラス表現は構造ではなく装飾として扱ってください。

8 つの関数の組み合わせ方

各コントロールは 1 つの CSS 関数に対応します。brightness・contrast・saturate は中立の 100% を中心とした割合、grayscale・sepia・opacity は 0〜100%、hue-rotate は -360〜360 度、blur は 0.5 刻みの px です。並び順は固定で、その順に適用されるため、hue-rotate(-8deg) の後に blur(14px) をかける場合と逆順では結果が変わることがあります。

中立値のままの関数は出力に含まれません。それでも 1 つの宣言なので、各関数は元のピクセルではなく直前の関数の結果を変換します。

値の範囲・丸め・コスト

CSS を書き出す前に、各値はその欄の範囲に収められます。brightness と contrast は 0〜300、saturate は 0〜500、grayscale・sepia・opacity は 0〜100、hue-rotate は -360〜360、blur は 0〜40(0.5 刻み)です。blur に -5、grayscale に 500 と入力して欄から離れると 0 と 100 に戻り、空欄は直前の値に戻ります。これは出力を有効に保つためです。解釈できない値が 1 つあると、ブラウザーは filter 宣言ごと破棄します。

filter と backdrop-filter は GPU で合成され、中でもぼかしが高コストです。広い領域に 14px の backdrop blur をかけると、スクロール時を中心に他のすべてを合わせたより重くなることがあります。ぼかす面は小さく保ち、サポートする中で最も遅い端末で確認してください。

最近使ったツール: