Уласцівасць mask-clip
Уласцівасць mask-clip
устанаўлівае вобласць элемента, у межах якой будзе адлюстроўвацца маска. Яна вызначае, якія часткі элемента будуць закранутыя маскіраваннем, а якія застануцца бачнымі без зменаў.
Сінтаксіс
селектар {
mask-clip: значэнне | no-clip;
}
Значэнні
Значэнне | Апісанне |
---|---|
border-box |
Маска ўжываецца да вобласці, уключаючы мяжы элемента. |
padding-box |
Маска ўжываецца да вобласці, уключаючы padding, але не мяжы. |
content-box |
Маска ўжываецца толькі да змесціва элемента. |
margin-box |
Маска ўжываецца да вобласці, уключаючы margin (эксперыментальнае). |
fill-box |
Маска ўжываецца да bounding box аб'екта (для SVG). |
stroke-box |
Маска ўжываецца да stroke bounding box (для SVG). |
view-box |
Маска ўжываецца да viewbox (для SVG). |
no-clip |
Маска не абмяжоўваецца вобласцю элемента. |
Значэнне па змаўчанні: border-box
.
Прыклад . Ужыванне mask-clip да розных абласцей
Параўнаем розныя значэнні mask-clip на элеменце з мяжамі і адступамі:
<div class="box border-box">border-box</div>
<div class="box padding-box">padding-box</div>
<div class="box content-box">content-box</div>
.box {
width: 200px;
height: 100px;
margin: 20px;
padding: 20px;
border: 10px dashed black;
background: linear-gradient(45deg, red, blue);
mask-image: linear-gradient(to right, black, transparent);
mask-size: 100% 100%;
mask-repeat: no-repeat;
display: inline-block;
}
.border-box {
mask-clip: border-box;
}
.padding-box {
mask-clip: padding-box;
}
.content-box {
mask-clip: content-box;
}
:
Прыклад . Выкарыстанне no-clip
Дэманстрацыя значэння no-clip, калі маска выходзіць за межы элемента:
<div id="elem"></div>
#elem {
width: 200px;
height: 200px;
background: linear-gradient(45deg, red, blue);
mask-image: radial-gradient(circle, black 50%, transparent 70%);
mask-size: 300px 300px;
mask-position: center;
mask-clip: no-clip;
border: 2px solid black;
}
:
Прыклад . SVG з рознымі значэннямі mask-clip
Ужыванне розных значэнняў да SVG-элементу:
<svg width="400" height="200">
<defs>
<mask id="mask1" maskContentUnits="objectBoundingBox">
<rect x="0.1" y="0.1" width="0.8" height="0.8" fill="white"/>
</mask>
</defs>
<rect x="10" y="10" width="180" height="180" fill="blue"
mask="url(#mask1)" mask-clip="fill-box"/>
<rect x="210" y="10" width="180" height="180" fill="red"
mask="url(#mask1)" mask-clip="view-box"/>
</svg>
:
Глядзіце таксама
-
уласцівасць
mask-origin
,
вызначае зыходную пазіцыю маскі -
уласцівасць
mask-image
,
задае выяву для маскі -
уласцівасць
mask
,
скарачэнне для ўсіх уласцівасцей маскіравання -
уласцівасць
clip-path
,
стварае абрэзную вобласць для элемента