คุณสมบัติ mask-mode

คุณสมบัติ mask-mode กำหนดวิธีการที่มาสก์มีปฏิสัมพันธ์กับพื้นหลังขององค์ประกอบ มันกำหนดว่าจะให้มาสก์ใช้ช่องอัลฟา (ความโปร่งใส) หรือค่าความสว่าง (luminance) ของภาพมาสก์

ไวยากรณ์

cssselector {
  mask-mode: alpha | luminance | match-source;
}

ค่า

ค่า คำอธิบาย
alpha มาสก์ใช้เฉพาะช่องอัลฟา (ความโปร่งใส) ของภาพ
luminance มาสก์ใช้ค่าความสว่างของภาพ (สีขาว = มองเห็นได้, สีดำ = โปร่งใส)
match-source สำหรับภาพให้ใช้ช่องอัลฟา, สำหรับ SVG ให้ใช้ luminance (ค่าเริ่มต้น)

ตัวอย่าง . โหมด alpha

การนำ SVG mask มาใช้ในโหมด alpha:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask: url("heart.svg") center/150px no-repeat;
  mask-mode: alpha;
}

Результат:

ตัวอย่าง . โหมด luminance

การนำ SVG mask มาใช้ในโหมด luminance:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask: url("heart.svg") center/150px no-repeat;
  mask-mode: luminance;
}

Результат:

ตัวอย่าง . SVG mask พร้อมโหมด match-source

การใช้ค่าเริ่มต้น (match-source) สำหรับ SVG:

html<img id="image" src="image.jpg">
<svg width="0" height="0">
  <mask id="svg-mask">
    <path d="M150 15L183 111L285 111L204 171L237 267L150 216L63 267L96 171L15 111L117 111Z" fill="white"/>
  </mask>
</svg>
css#image {
  width: 500px;
  height: 281px;
  mask: url(#svg-mask);
  mask-mode: match-source;
}

Результат:

ตัวอย่าง . การประกอบกับโหมดต่างๆ

การรวมมาสก์ที่มีโหมดการผสมผสานต่างกัน:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask:
    url("heart.svg") 100px 50px / 150px no-repeat alpha,
    url("arrow.svg") 200px 30px / 150px no-repeat luminance;
  mask-composite: add;
}

Результат:

ดูเพิ่มเติม

  • คุณสมบัติ mask-image,
    กำหนดภาพสำหรับมาสก์
  • คุณสมบัติ mask-composite,
    กำหนดการมีปฏิสัมพันธ์ของมาสก์หลายอัน
  • คุณสมบัติ mask,
    คำสั่งรวมสำหรับคุณสมบัติการ masking ทั้งหมด