全ての画像の色を白と黒 (100% グレー) に変更します:
img {
-webkit-filter: grayscale(100%); /* Chrome, Safari,
Opera */
filter: grayscale(100%);
}
チップ: 他の "Try it Yourself" 例が下にあります。
filter プロパティは、要素(多くは <img>)に視覚効果(ぼかしや彩度など)を定義します。
デフォルト値: | none |
---|---|
継承: | 継承する |
アニメーション可否: | 可。animatable を参照 |
バージョン: | CSS3 |
JavaScript 構文: | object.style.WebkitFilter="grayscale(100%)" Try it |
表中の数字は、完全にプロパティをサポートした最初のブラウザのバージョンです。
数字の後に続く -webkit- は、接頭辞付きで動作した最初のバージョンです。
プロパティ | |||||
---|---|---|---|---|---|
filter | 18.0 -webkit- | 13.0 | 35.0 | 9.1 6.0 -webkit- |
15.0 -webkit- |
注: Internet Explorer の古いバージョン(4.0 ~ 8.0)では、廃止された非標準の "filter" プロパティをサポートしていました。 これは主に、IE8 以下からサポートが必要なときに不透明度のために使われていました。
filter:
none | blur() | brightness() | contrast() | drop-shadow() | grayscale() | hue-rotate()
| invert() | opacity() | saturate() | sepia() | url();
チップ: 複数のフィルタを使用する場合は、各フィルタをスペースで区切ります(下の「その他の例」を参照してください)。
注: パーセント値(例えば 75%)を使用するフィルタは、小数値(例えば 0.75)でも指定できます。
Filter | 説明 | Play it |
---|---|---|
なし | デフォルト値。効果を指定しません | Play it ❯ |
blur(px) | 画像にぼかし効果を適用します。値が大きいほど、ぼかしがより大きくなります。 値を指定しない場合は、0 が使用されます。 |
Play it ❯ |
brightness(%) | 画像の明度を調整します。 0% は、画像が真っ黒になります。 100% (1) は、デフォルトで、元の画像を表示します。 100% を超える値は、より明るくなります。 |
Play it ❯ |
contrast(%) | 画像のコントラストを調整します。 0% は、画像が真っ黒になります。 100% (1) は、デフォルトで、元の画像を表示します。 100% を超える値は、コントラストがより小さくなります。 |
Play it ❯ |
drop-shadow(h-shadow v-shadow blur spread color) | 画像にドロップシャドウ効果を適用します。 指定できる値: h-shadow - 必須。横方向の影のピクセル値を指定します。負の値は、影を画像の左側に配置します。 v-shadow - 必須。縦方向の影のピクセル値を指定します。負の値は、影を画像の上側に配置します。 blur - 任意。これは、3 番目の値で、ピクセルでなければなりません。影にぼかし効果を追加します。 値が大きいほど、ぼやけが大きくなります(影が大きく薄くなる)。負の値は使用できません。 値が指定されていない場合は、0(影のエッジがシャープになる)が使用されます。 spread - 任意。これは、4 番目の値で、ピクセルでなければなりません。 正の値は影が拡大し、より大きくなり、負の値は影が縮小します。指定しない場合は 0(影は要素と同じサイズ)になります。 注: Chrome、Safari、Opera、およびおそらく他のブラウザも、この 4 番目の長さをサポートしていません。 追加された場合でもレンダリングされません。 color - 任意。影に色を追加します。指定しない場合、色はブラウザに依存します(多くの場合は黒)。 10px のぼかし効果を持つ、横・縦両方向に 8px の大きさの赤い影を作成する例: filter: drop-shadow(8px 8px 10px red); チップ: このフィルタは、box-shadow プロパティに似ています。 |
Play it ❯ |
grayscale(%) | 画像をグレースケールに変換します。 0% (0) は、デフォルトで、元の画像を表します。 100% は、画像を完全なグレーにします(黒・白画像用に使用)。 注: 負の値は使用できません。 |
Play it ❯ |
hue-rotate(deg) | 画像に色相の回転が適用されます。値は、画像サンプルを調整する色相環の角度を定義します。
0deg はデフォルトで、元の画像を表します。 注: 最大値は 360deg です。 |
Play it ❯ |
invert(%) | 画像内のサンプルを反転させます。 0% (0) は、デフォルトで、元の画像を表します。 100% は、画像を完全に反転します。 注: 負の値は使用できません。 |
Play it ❯ |
opacity(%) | 画像の不透明度レベルを設定します。不透明度レベルは、以下のような透明度レベルを記述します: 0% は完全に透明。 100% (1) は、デフォルトで、元の画像表す(透明度なし) 注: 負の値は使用できません。 チップ: このフィルタは、opacity プロパティに似ています。 |
Play it ❯ |
saturate(%) | 彩度を変更します。 0% (0) は、画像を完全に無彩色にします。 100% はデフォルトで、元の画像を表します。 100% を超える値は、過彩度になります。 注: 負の値は使用できません。 |
Play it ❯ |
sepia(%) | 画像をセピア調に変換します。 0% (0) はデフォルトで、元の画像を表します。 100% は、画像を完全にセピア色にします。 注: 負の値は使用できません。 |
Play it ❯ |
url() | url() 関数には、SVG フィルタを指定する XML ファイルの場所を、場合によっては特定のフィルタ要素にアンカーを含めて指定します。例: filter: url(svg-url#element-id) |
|
initial | プロパティにデフォルト値を設定します。initial を参照 | |
inherit | このプロパティは親要素を継承します。inherit を参照 |
画像にぼかし効果を適用します:
img {
-webkit-filter: blur(5px); /* Chrome, Safari,
Opera */
filter: blur(5px);
}
画像の明度を調整します:
img {
-webkit-filter: brightness(200%); /* Chrome, Safari,
Opera */
filter: brightness(200%);
}
画像のコントラストを調整します:
img {
-webkit-filter: contrast(200%); /* Chrome, Safari,
Opera */
filter: contrast(200%);
}
画像にドロップシャドウ効果を適用します:
img {
-webkit-filter: drop-shadow(8px 8px 10px red); /* Chrome, Safari,
Opera */
filter: drop-shadow(8px 8px 10px red);
}
画像をグレースケールに変換します:
img {
-webkit-filter: grayscale(50%); /* Chrome, Safari,
Opera */
filter: grayscale(50%);
}
画像に色相回転を適用します:
img {
-webkit-filter: hue-rotate(90deg); /* Chrome, Safari,
Opera */
filter: hue-rotate(90deg);
}
画像のサンプルを反転します:
img {
-webkit-filter: invert(100%); /* Chrome, Safari,
Opera */
filter: invert(100%);
}
画像に不透明度のレベルを設定します:
img {
-webkit-filter: opacity(30%); /* Chrome, Safari,
Opera */
filter: opacity(30%);
}
画像の彩度を変更します:
img {
-webkit-filter: saturate(800%); /* Chrome, Safari,
Opera */
filter: saturate(800%);
}
画像をセピアに変換します:
img {
-webkit-filter: sepia(100%); /* Chrome, Safari,
Opera */
filter: sepia(100%);
}
複数のフィルタを使用するには、各フィルタをスペースで区切ります。
注: 順序が重要です(例えば、sepia() の後に grayscale() を使用すると、結果は、完全に灰色な画像になります)。
img {
-webkit-filter: contrast(200%) brightness(150%); /* Chrome, Safari,
Opera */
filter: contrast(200%) brightness(150%);
}
すべてのフィルタ機能のデモ:
.blur {
-webkit-filter: blur(4px);
filter: blur(4px);
}
.brightness {
-webkit-filter:
brightness(0.30);
filter: brightness(0.30);
}
.contrast {
-webkit-filter:
contrast(180%);
filter: contrast(180%);
}
.grayscale {
-webkit-filter:
grayscale(100%);
filter: grayscale(100%);
}
.huerotate {
-webkit-filter:
hue-rotate(180deg);
filter: hue-rotate(180deg);
}
.invert {
-webkit-filter:
invert(100%);
filter: invert(100%);
}
.opacity {
-webkit-filter:
opacity(50%);
filter: opacity(50%);
}
.saturate {
-webkit-filter:
saturate(7);
filter: saturate(7);
}
.sepia {
-webkit-filter:
sepia(100%);
filter: sepia(100%);
}
.shadow {
-webkit-filter:
drop-shadow(8px 8px 10px green);
filter: drop-shadow(8px 8px 10px green);
}
Try it Yourself ❯
HTML DOM リファレンス:filter プロパティ