Savybė mask-composite

Savybė mask-composite leidžia derinti kelias kaukes, taikomas vienam elementui. Ji nustato, kaip skirtingos kaukės sąveikaus tarpusavyje, kai yra uždėtos.

Sintaksė

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

Reikšmės

Reikšmė Aprašas
add Rezultatas - visų kaukių sąjunga (numatytasis režimas).
subtract Antroji kaukė atimama iš pirmosios.
intersect Rodoma tik kaukių sankirtos sritis.
exclude Rodomos sritys, kurios nėra bendros kaukėms.

Pavyzdys . Režimas add

Dviejų kaukių (širdelės ir rodyklės) sujungimas:

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;
}

Результат:

Pavyzdys . Režimas subtract

Rodyklės atėmimas iš širdelės:

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;
}

Результат:

Pavyzdys . Režimas intersect

Rodoma tik kaukių sankirtos sritis:

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;
}

Результат:

Pavyzdys . Režimas exclude

Rodomos sritys, kurios nėra bendros:

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;
}

Результат:

Pavyzdys . Kombinacija su gradientais

Naudojimas su gradientinėmis kaukėmis:

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;
}

Результат:

Taip pat žiūrėkite

  • savybė mask-image,
    nustato kaukių vaizdus
  • savybė mask,
    sutrumpintas visų kaukių savybių užrašas
  • savybė mask-mode,
    nustato kaukės perdangos režimą
  • savybė mix-blend-mode,
    nustato elementų perdangos režimą