mask-composite касиети

mask-composite касиети бир элементке колдонулган бир нече маскаларды бириктирүүгө мүмкүндүк берет. Бул ар кандай маскалардын бири-бирине кандайча таасир этээрин аныктайт.

Синтаксис

cssселектор {
  mask-composite: <compositing-operator>#;
}

Маанилери

Маани Сүрөттөмө
add Натыйжа - бардык маскалардын биригүүсү (демейки абал).
subtract Экинчи маска биринчисинен кемитилет.
intersect Маскалардын кесилишкен аймагы гана көрсөтүлөт.
exclude Маскалар үчүн жалпы эмес аймактар көрсөтүлөт.

Мисал . Add режими

Эки масканын биригүүсү (жүрөк жана жебе):

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

Результат:

Мисал . Subtract режими

Жебени жүрөктөн кемитүү:

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

Результат:

Мисал . Intersect режими

Маскалардын кесилишкен аймагы гана көрсөтүлөт:

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

Результат:

Мисал . Exclude режими

Жалпы эмес аймактарды көрсөтүү:

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

Результат:

Мисал . Градиенттер менен комбинация

Градиенттүү маскалар менен колдонуу:

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

Результат:

Ошондой эле караңыз

  • mask-image касиети,
    маскалар үчүн сүрөттөрдү белгилейт
  • mask касиети,
    маскалоонун бардык касиеттери үчүн кыскартылган форма
  • mask-mode касиети,
    масканы коюу режимин аныктайт
  • mix-blend-mode касиети,
    элементтерди коюу режимин аныктайт