SHU BLOG

BLOG NEWS

  • ARTICLE
    2025.07.06
  • CATEGORY
TITLE

【CSS】半透明のフィルターを設置について解説

SHU[シュウ]

1991年生まれ九州の宮崎県育ち
高校卒業後、愛知県で自動車関係の
お仕事に5年間勤め、WEB業界に
転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画
基本インドアです!

サーバーとドメインの同時取得で.jpが無料

シュウ
シュウ
今回は【CSS】半透明のフィルターを設置についての解説になります!

こんな方に読んでほしい

  • CSSを学び始めた方へ!! rgba,filterを学べます!
  • 画像や要素の上にうっすらと色を重ねて、テキストなどのコンテンツを見やすくするテクニックです。

フィルターについて

フィルターについて

Webサイトのデザインをしていると、「背景の画像が綺麗なんだけど、その上に乗せた文字が読みにくい…」と感じることがよくありますよね。

画像や要素の上にうっすらと色を重ねて、テキストなどのコンテンツを見やすくするテクニックです。今回は、初心者の方でも簡単に実装できる方法を解説します!

rgba()と、filterの違いは?

rgba()と、filterの違いは?

フィルター」という言葉が二つの異なる意味で使われているため、rgba()と、filterとでは全く異なります。

rgba()でのフィルター(オーバーレイ)

background-color: rgba(0, 0, 0, 0.3);

これは、要素の上に半透明の色のレイヤーを重ねることで、背景の要素を暗くしたり色味を加えたりする手法です。

rgba()を使う場合とは
  • 主に、背景画像の上にテキストを置く際に、テキストの視認性を高めるために使われます。
    背景が明るすぎたり、色が多くてテキストが読みにくい場合に、半透明の黒や他の色を重ねて背景を「落ち着かせる」効果があります。
  • 背景の色全体が均一に変わり、明るさが落ちます。
    元の画像のコントラストなどは変わりません。
  • 対象の要素全体(正確にはその擬似要素が覆う範囲)に適用されます。

filterでのフィルター(CSSフィルター関数)

filter: contrast(30%);

CSSのfilterを使って、要素の視覚的な表現そのものを変更する手法です。
Photoshopなどの画像編集ソフトのフィルター機能に近いものです。

filterを使う場合とは
  • 要素(画像や動画、あるいはHTML要素全体)のコントラスト、彩度、明るさ、ぼかしといった視覚効果を直接調整します。
  • contrast(30%) の場合、元のコントラストが30%に低下します。
    つまり、明暗の差が少なくなり、全体的にぼやけたような、あるいは色褪せたような印象になる可能性があります。
  • filter適用された要素そのものに直接効果が現れます。

rgba()でのフィルターの指定方法

rgba()でのフィルターの指定方法

「背景の画像を少し暗くして、その上の文字を読みやすくしたい」
::before擬似要素を使った半透明のオーバーレイ(rgba())が断然良いです。
これによって背景は暗くなりますが、元の画像の質感や色はほぼ保たれ、文字が浮き上がって見えます。

rgba()でのフィルターの指定方法

サンプル
SHU BLOG
<div class="filtercss-rgba">
	<div class="img"><img src="sample.jpg" alt="サンプル" 省略 ></div>
	<div class="ttl">SHU BLOG</div>
</div>
.filtercss-rgba {
	position: relative;  /* テキストを中央にするため指定 */
}

.filtercss-rgba .img {
	position: relative;  /* フィルターをかけるため指定 */
}

 /* 以下 必須 */
.filtercss-rgba .img::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
}

.ttl {
	position: absolute;
	top: 50%;
	left: 50%;  transform: translate(-50%, -50%); 
}

filterでのフィルターの指定方法

filterでのフィルターの指定方法

「背景画像のコントラストを下げて、より柔らかい、または霞んだような視覚効果を与えたい」
filter: contrast(30%)が適しています。
これは画像そのものの視覚的な性質を変更します。

filterでのフィルターの指定方法

サンプル
contrast10
サンプル
contrast30
サンプル
contrast60
サンプル
contrast90
<div class="filtercss-filter">
	<div class="img contrast10"><img src="sample.jpg" alt="サンプル"></div>
	<div class="ttl">contrast10</div>
</div>
<!--contrast30 以下は省略-->
.filtercss-filter {
	position: relative;  /* テキストを中央にするため指定 */
}
.filtercss-filter .contrast10 {filter: contrast(10%);}
.filtercss-filter .contrast30 {filter: contrast(30%);}
.filtercss-filter .contrast60 {filter: contrast(60%);}
.filtercss-filter .contrast90 {filter: contrast(90%);}

まとめ

今回はこれで以上です。

POINT
  • 今回は、要素にフィルターを設置するテクニックについてまとめてみました。
  • rgba()は、要素の上に半透明の色のレイヤーを重ねることで、背景の要素を暗くしたり色味を加えたりする手法です。
  • filterは、適用された要素そのもの直接効果が現れます。
  • 「背景の画像を少し暗くして、その上の文字を読みやすくしたい」場合は、::before擬似要素を使った半透明のオーバーレイrgba()が良いです。
スポンサーリンク

SHU

1991年生まれ九州の宮崎県育ち高校卒業後、愛知県で自動車関係のお仕事に5年間勤め、WEB業界に転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画基本インドアです!笑
つくる、しあわせをテーマとして主にWEBに関する様々な情報を発信しています。

オススメ記事

月別アーカイブ

Recent Posts最新記事

NEW