プロパティ mask-image
プロパティ mask-image は、要素のマスクとして使用される画像を設定できます。マスクは、要素のどの部分が表示され、どの部分が隠されるかを定義します。マスクとしては、SVG、PNG画像またはグラデーションを使用できます。
構文
セレクタ {
mask-image: none | <image> | <url>;
}
値
| 値 | 説明 |
|---|---|
none |
マスキングを無効にします(デフォルト値)。 |
url() |
マスク画像(SVG、PNG)へのパス。 |
linear-gradient() |
マスクとしての線形グラデーション。 |
radial-gradient() |
マスクとしての放射グラデーション。 |
例 . SVGをマスクとして使用する
ハート形のSVG画像をマスクとして画像に適用します:
<img id="image" src="image.jpg">
#image {
width: 500px;
height: 281px;
mask-image: url("heart.svg");
mask-position: center;
mask-size: 300px;
mask-repeat: no-repeat;
}
:
例 . グラデーションをマスクとして使用する
要素に対して線形グラデーションをマスクとして適用します:
<div id="elem"></div>
#elem {
width: 500px;
height: 300px;
background: linear-gradient(45deg, red, blue);
mask-image: linear-gradient(to right, transparent, black);
}
:
例 . SVG要素をマスクとして使用する
SVG要素を使用してマスクを作成し、画像に適用します:
<img id="image" src="image.jpg">
<svg width="0" height="0">
<mask id="mask">
<path d="M150 15L183 111L285 111L204 171L237 267L150 216L63 267L96 171L15 111L117 111Z" fill="white"/>
</mask>
</svg>
#image {
width: 500px;
height: 281px;
mask-image: url(#mask);
mask-position: center;
mask-size: contain;
mask-repeat: no-repeat;
}
:
関連項目
-
プロパティ
mask-position,
要素に対するマスクの位置を定義します -
プロパティ
mask-size,
マスクのサイズを定義します -
プロパティ
mask-repeat,
マスクの繰り返しを定義します -
プロパティ
mask-mode,
マスクが背景とどのように相互作用するかを定義します -
プロパティ
mask,
すべてのマスキングプロパティの一括指定