HTMLとCSSで実現!画像にマスクをかける方法について解説!

HTMLとCSSで実現!画像にマスクをかける方法について解説!

※この記事には広告が含まれています

こんにちは!キャメルコードブログのしゅんです!

今回はCSSを使って画像にマスクをかける方法について解説していきます。

  • 画像編集ソフトで加工するのはちょっと手間に感じる
  • もっと手軽に画像の雰囲気を変えたい、明暗を調節したい

photoshopなどの画像編集ソフトを使えば画像を加工することができますが、このように感じることもあるのではないでしょうか。

こんなときCSSを使って画像にマスクをかけることで画像の色調や明暗を変えることができます。

ちょっとした画像の加工に使えるテクニックなのでぜひマスターしてくださいね!

今回の記事でできるようになること
  • 画像編集ソフトを使うことなくHTMLとCSSだけで画像にマスクをかけることができるようになる

それでは解説をしていきます!

目次

疑似要素を使用

疑似要素を使うことでマスクをかけることが可能です。

今回は画像を暗くするために、黒いマスクをかける例を見ていきます。

参考コードは以下。

-- CSS --

.image-container {
  position: relative;
}

.image-container img {
  display: block;
  width: 100%; 
  max-width: 100%;
}

.image-container::before {
  content: '';
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* マスクの色と透明度 */
}

上記コードについて順番に見ていきましょう。

  1. 疑似要素のbeforeを使いコンテンツを生成する
  2. insetプロパティを使い画面全体に広げる
  3. background-colorでマスクの色を指定する

1. beforeを使いコンテンツを生成する

まずは疑似要素のbeforeを使いコンテンツを生成します。

主な疑似要素として以下2つは覚えておきましょう!

  • before
  • after

上記コードではbeforeを使いコンテンツを生成し、幅と高さを100%に設定して親要素いっぱいに広げています。

2. insetプロパティを使い画面全体に広げる

insetはtop、right、bottom、leftを一括指定できるCSSプロパティです。

上記コードではinsetを0に指定して親要素の上にピッタリ被さるようにしています。

「inset: 0;」は以下のように書き換えることもできますね^^

-- CSS --

.image-container::before {
  /* inset: 0; */ 
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

3. background-colorでマスクの色を指定する

コンテンツに背景色をつけてマスクの色を指定していきます。

今回の例では黒いマスクを被せたいので以下のようなコードになりますね^^

-- CSS --

.image-container::before {
  content: '';
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); 
}

メリットとデメリット

疑似要素を使ってマスクをかけることのメリット、デメリットについて解説をしていきます!

メリット

  • 手軽に画像に加工を加えることができる
  • CSSのためいつでも変更が可能

1. 手軽に画像に加工を加えることができる

一つ目のメリットとしては手軽に画像にマスクをかけることが可能ということです。

CSSだけで画像を調節できるのは大きなメリットですね。

CSSだけで画像を調節できるため工数がかからず時間が短縮できます。

2. CSSのため簡単に変更が可能

CSSで調節しているため簡単に変更が可能です。

画像編集ソフトで編集するとなると意外と時間と手間がかかってしまいます。

画像編集ソフトを使うとなると、「ソフトの立ち上げ、編集、ダウンロード、アップロード」などと何かと手間がかかります。

その手間を省けるのは大きなメリットですね^^

デメリット

  • 細かい調節ができない

1. 細かい調節ができない

あくまで簡易的にマスクをかけるだけのため、細かい調節ができません。

全体的な明暗の調節、色調の変更などは可能ですが、特定の部分だけを変更したり、微調整をすることができません。

細かい調節を加えたいときはPhotoshopIllustratorなどの画像編集ソフトを使って編集しましょう!

優先順位的にはそれほど高くないですが、簡単なバナー作成や画像編集はコーダーでも行う可能性はあるので、最低限使えるようになっておくと良いです^^

まとめ:画像全体にマスクをかけるならCSSで実現可能!

いかがでしたでしょうか?

  • 画像編集ソフトで加工するのはちょっと手間に感じる
  • もっと手軽に画像の雰囲気を変えたい、明暗を調節したい

このようなとき、今回の方法で画像の色調や明暗を変更することが可能なので、ぜひ覚えておいてくださいね^^

しかし、細かな調節などをするとなるとやはりPhotoshopIllustratorなどの画像編集ソフトが必要になってきます。

興味がある方は一度自分で使ってみるのもおすすめです^^

今回は以上になります。では次の記事でまたお会いしましょう!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次