Xüsusiyyət mask-composite

mask-composite xüsusiyyəti bir elementə tətbiq edilən bir neçə maskı birləşdirməyə imkan verir. O, müxtəlif maskların üst-üstə düşdükdə bir-biri ilə necə qarşılıqlı əlaqədə olacağını təyin edir.

Sintaksis

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

Dəyərlər

Dəyər Təsvir
add Nəticə - bütün maskların birləşməsidir (standart olaraq).
subtract Ikinci mask birincidən çıxarılır.
intersect Yalnız maskların kəsişdiyi sahə göstərilir.
exclude Masklar üçün ortaq olmayan sahələr göstərilir.

Nümunə . Add rejimi

Iki maskanın birləşməsi (ürək və ox):

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

Результат:

Nümunə . Subtract rejimi

Ürəkdən oxun çıxarılması:

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

Результат:

Nümunə . Intersect rejimi

Yalnız maskların kəsişdiyi sahənin göstərilməsi:

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

Результат:

Nümunə . Exclude rejimi

Ortaq olmayan sahələrin göstərilməsi:

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

Результат:

Nümunə . Qradientlərlə birləşmə

Qradient maskalarla istifadə:

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

Результат:

Həmçinin bax

  • mask-image xüsusiyyəti,
    maskalar üçün şəkilləri təyin edir
  • mask xüsusiyyəti,
    maskalama xüsusiyyətləri üçün qısaltmadır
  • mask-mode xüsusiyyəti,
    maskanın üst-üstə düşmə rejimini təyin edir
  • mix-blend-mode xüsusiyyəti,
    elementlərin üst-üstə düşmə rejimini təyin edir