CSS mask 屬性

定義和用法

mask 屬性用于通過遮罩或裁剪圖像(部分或全部)來隱藏元素。

mask 屬性是以下屬性的簡寫形式:

實例

例子 1

為圖像創建遮罩層:

.mask1 {
  mask: url(w3logo.png) no-repeat 50% 50%;
}

親自試一試

例子 2

使用線性漸變和徑向漸變為圖像創建不同的遮罩層:

.mask1 {
  mask: linear-gradient(black, transparent);
}
.mask2 {
  mask: radial-gradient(circle, black 50%, rgba(0, 0, 0, 0.5) 50%);
}
.mask3 {
  mask: radial-gradient(ellipse, black 50%, rgba(0, 0, 0, 0.5) 50%);
}

親自試一試

例子 3

使用 SVG <mask> 元素為圖像創建遮罩層:

<svg width="600" height="400">
  <mask id="svgmask1">
    <polygon fill="#ffffff" points="100,10 40,198 190,78 10,78 160,198"></polygon>
  </mask>
  <image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="img_5terre.jpg" mask="url(#svgmask1)"></image>
</svg>

親自試一試

例子 4

使用 SVG <mask> 元素為圖像創建遮罩層:

<svg width="600" height="400">
  <mask id="svgmask1">
    <circle fill="#ffffff" cx="75" cy="75" r="75"></circle>
    <circle fill="#ffffff" cx="80" cy="260" r="75"></circle>
    <circle fill="#ffffff" cx="270" cy="160" r="75"></circle>
  </mask>
  <image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="img_5terre.jpg" mask="url(#svgmask1)"></image>
</svg>

親自試一試

CSS 語法

mask-image: mask-image mask-mode mask-repeat mask-position mask-clip mask-origin mask-size mask-composite|initial|inherit;

屬性值

描述
mask-image 指定用作元素遮罩層的圖像。默認值為 none。
mask-mode

指定遮罩層圖像應被視為亮度遮罩還是 alpha 遮罩。

默認值為 match-source。

mask-repeat

設置遮罩圖像是否/如何重復。

默認值為 repeat。

mask-position

設置遮罩圖像的起始位置(相對于遮罩位置區域)。

默認值為 0% 0%。

mask-clip

指定遮罩圖像影響的區域。

默認值為 border-box。

mask-origin

指定遮罩層圖像的起始位置(遮罩位置區域)。

默認值為 border-box。

mask-size

指定遮罩層圖像的大小。

默認值為 auto。

mask-composite

指定當前遮罩層與下方遮罩層使用的合成操作。

默認值為 add。

initial 將此屬性設置為其默認值。參閱 initial
inherit 從其父元素繼承此屬性。參閱 inherit

技術細節

默認值: none match-source repeat 0% 0% border-box border-box auto add
繼承性:
動畫制作: 不支持。請參閱:動畫相關屬性
版本: CSS Masking Module Level 1
JavaScript 語法: object.style.mask="url(star.svg)"

瀏覽器支持

表格中的數字表示首個完全支持該屬性的瀏覽器版本。

Chrome Edge Firefox Safari Opera
120 120 53 15.4 106

相關頁面

教程:CSS 遮罩

參考:CSS mask 屬性

參考:CSS mask-clip 屬性

參考:CSS mask-composite 屬性

參考:CSS mask-image 屬性

參考:CSS mask-mode 屬性

參考:CSS mask-origin 屬性

參考:CSS mask-position 屬性

參考:CSS mask-repeat 屬性

參考:CSS mask-size 屬性

參考:CSS mask-type 屬性