cssの擬似要素を使って背景画像にフィルターをかける
cssの擬似要素を使って背景画像にフィルターをかける方法
背景画像としてオリジナルのものとカラーフィルターをかけたものの2種類を使いたいときに、背景画像の素材にあらかじめ加工をしておいてオリジナルと2枚の画像を用意する方法もありますが、”::after”や”::before”といったCSSの擬似要素を使う方法もあります。
この方法を使うことで用意する画像がオリジナルの1枚だけで済むようになります。
オリジナルの画像を背景画像に指定した状態
See the Pen
BayEzqB by saku (@web-saku)
on CodePen.
オリジナルの画像を背景画像に指定し、擬似要素でカラーフィルターをかけた状態
擬似要素を使ってフィルターをかける場合には、擬似要素に背景色の指定と位置の指定をする必要があります。
なお、この記述例では擬似要素として”::after”を使用していますので、オリジナルの背景画像の上にフィルターがかかっていますが、”::before”を使用するときにはz-indexの指定がないとフィルターがオリジナルの背景画像の下になってしまうので注意が必要です。
See the Pen
BaNzbzY by saku (@web-saku)
on CodePen.
・CSSの記述例
.sample {
background: url(https://web-saku.net/wp-content/uploads/2020/02/dolphin-san.jpg);
background-size: cover;
width: 100vw;
height: 100vh;
position: relative;
}
.sample::after {
content: "";
background: rgba(255,255,255,.5);
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
以上、cssの擬似要素を使って背景画像にフィルターをかける方法と記述例について紹介してきました。
参考になりましたら幸いです。
関連記事
CSSでテキストに下線を引く3つの方法
テキストに蛍光ペンで引いたマーカーのようなアンダーラインを引きたい時に使用できる方法について調べたので、CSSでテキストに下線を引く時に使える3つの方法についてそれぞれまとめて紹介していきたいと思います。 それぞれの方法ごとに出来ることできないことがあったりしますので、それぞれの特徴についてもまとめておきます。
CSSでつくるhover時に画像の中身だけが拡大されるリンクカード
マウスオーバー時に画像のサイズは変わらずに、画像の中身だけが拡大されるリンクカードをhtml/cssで作ったので記述例などを紹介します。
コメントを残す