Īpašība mask-composite

Īpašība mask-composite ļauj kombinēt vairākas maskas, kas tiek piemērotas vienam elementam. Tā nosaka, kā dažādas maskas mijiedarbosies viena ar otru, tiekot uzliktas.

Sintakse

cssselektors {
  mask-composite: <compositing-operator>#;
}

Vērtības

Vērtība Apraksts
add Rezultāts - visu masku apvienojums (pēc noklusējuma).
subtract Otrā maska tiek atņemta no pirmās.
intersect Tiek parādīts tikai masku krustojuma apgabals.
exclude Tiek parādīti apgabali, kas nav kopīgi abām maskām.

Piemērs . Režīms add

Divu masku (sirsniņa un bulta) apvienojums:

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

Результат:

Piemērs . Režīms subtract

Bultas atņemšana no sirsniņas:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask-image: 
    url("heart.svg"),
    url("arrow.svg");
  mask-position: 
    100px 50px,
    170px 80px;
  mask-size: 
    250px,
    120px;
  mask-repeat: no-repeat;
  mask-composite: subtract;
}

Результат:

Piemērs . Režīms intersect

Tiek rādīts tikai masku krustojuma apgabals:

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

Результат:

Piemērs . Režīms exclude

To apgabalu attēlošana, kas nav kopīgi:

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

Результат:

Piemērs . Kombinācija ar gradientiem

Izmantošana ar gradienta maskām:

html<div id="gradient-box"></div>
css#gradient-box {
  width: 400px;
  height: 400px;
  background: linear-gradient(45deg, red, yellow, green, blue);
  mask-image: 
    radial-gradient(circle at 30% 30%, black 40%, transparent 70%),
    radial-gradient(circle at 70% 70%, black 40%, transparent 70%);
  mask-composite: exclude;
}

Результат:

Skatiet arī

  • īpašība mask-image,
    iestata attēlus maskām
  • īpašība mask,
    saīsinājums visām maskēšanas īpašībām
  • īpašība mask-mode,
    nosaka maskas pārklājuma režīmu
  • īpašība mix-blend-mode,
    nosaka elementu pārklājuma režīmu