Уласцівасць mask-image

Уласцівасць mask-image дазваляе задаць выяву, якая будзе выкарыстоўвацца ў якасці маскі для элемента. Маска вызначае, якія часткі элемента будуць бачныя, а якія - схаваныя. У якасці маскі можна выкарыстоўваць SVG, PNG выявы або градыенты.

Сінтаксіс

cssселектар {
  mask-image: none | <image> | <url>;
}

Значэнні

Значэнне Апісанне
none Адключае маскіраванне (значэнне па змаўчанні).
url() Шлях да выявы-маскі (SVG, PNG).
linear-gradient() Лінейны градыент у якасці маскі.
radial-gradient() Радыяльны градыент у якасці маскі.

Прыклад . Выкарыстанне SVG у якасці маскі

Наложым SVG-выяву сэрцачка ў якасці маскі на карцінку:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask-image: url("heart.svg");
  mask-position: center;
  mask-size: 300px;
  mask-repeat: no-repeat;
}

Результат:

Прыклад . Выкарыстанне градыенту ў якасці маскі

Прымянім лінейны градыент у якасці маскі для элемента:

html<div id="elem"></div>
css#elem {
  width: 500px;
  height: 300px;
  background: linear-gradient(45deg, red, blue);
  mask-image: linear-gradient(to right, transparent, black);
}

Результат:

Прыклад . Выкарыстанне SVG-элемента ў якасці маскі

Створiм маску з дапамогай SVG-элемента і прымянім яе да выявы:

html<img id="image" src="image.jpg">
<svg width="0" height="0">
  <mask id="mask">
    <path d="M150 15L183 111L285 111L204 171L237 267L150 216L63 267L96 171L15 111L117 111Z" fill="white"/>
  </mask>
</svg>
css#image {
  width: 500px;
  height: 281px;
  mask-image: url(#mask);
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
}

Результат:

Глядзіце таксама

  • уласцівасць mask-position,
    вызначае становішча маскі адносна элемента
  • уласцівасць mask-size,
    вызначае памер маскі
  • уласцівасць mask-repeat,
    вызначае паўтарэнне маскі
  • уласцівасць mask-mode,
    вызначае як маска ўзаемадзейнічае з фонам
  • уласцівасць mask,
    скарачэнне для ўсіх уласцівасцей маскіравання