Курсы по HTML+CSS
Менторство: 200$ за курс. Репетиторство: 20$ за занятие. Жми для подробностей!
111 of 313 menu
Бесплатный курс: Практика на Реальных Проектах и Работы в Портфолио! Начало 11 ноября. Жми для записи!

Свойство mask-composite

Свойство mask-composite позволяет комбинировать несколько масок, применяемых к одному элементу. Оно определяет, как будут взаимодействовать между собой разные маски при их наложении.

Синтаксис

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

Значения

Значение Описание
add Результат - объединение всех масок (по умолчанию).
subtract Вторая маска вычитается из первой.
intersect Отображается только область пересечения масок.
exclude Отображаются области, не являющиеся общими для масок.

Пример . Режим add

Объединение двух масок (сердечко и стрелка):

<img id="image" src="image.jpg"> #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

Вычитание стрелки из сердечка:

<img id="image" src="image.jpg"> #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

Отображение только области пересечения масок:

<img id="image" src="image.jpg"> #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

Отображение областей, не являющихся общими:

<img id="image" src="image.jpg"> #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; }

:

Пример . Комбинация с градиентами

Использование с градиентными масками:

<div id="gradient-box"></div> #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,
    определяет режим наложения элементов
idhybymsru