DigitalOcean 为您的旅程的每个阶段提供云产品。 立即开始使用 $200 免费积分!
mask-origin
指定 遮罩层图像 的遮罩位置区域。 换句话说,它定义了遮罩层图像的原点位置,无论是 边框、填充或内容框的边缘。
.element {
mask-image: url(star.svg);
mask-origin: content-box;
}
对于渲染为单个框的元素,mask-origin
指定遮罩定位区域。 对于渲染为多个框的元素(例如,多行内联框、多页框),该属性指定 box-decoration-break
在哪些框上操作以确定遮罩定位区域。
此属性类似于 background-origin
属性,除了它具有不同的初始值和三个适用于 SVG 元素的附加值。
在以下演示中,您可以更改遮罩层图像的原点。 底部有相同的图像,以更好地显示遮罩效果并标记边框和填充区域
语法
mask-origin: <geometry-box> = content-box | padding-box | border-box | margin-box | fill-box | stroke-box | view-box
- 初始值:
border-box
- 应用于:所有元素。 在 SVG 中,它适用于容器元素,但不包括
<defs>
元素、所有图形元素和<use>
元素。 - 继承:否
- 动画类型:离散
值
/* Keywords */
mask-origin: content-box;
mask-origin: padding-box;
mask-origin: border-box;
mask-origin: margin-box;
mask-origin: fill-box;
mask-origin: stroke-box;
mask-origin: view-box;
/* Global values */
mask-origin: intial;
mask-origin: inherit;
mask-origin: unset;
值定义
content-box
: 位置相对于内容框。mask-image
的原点位于内容边缘的左上角。padding-box
: 位置相对于填充框。0 0
处遮罩图像的原点位于填充边缘的左上角,100% 100%
为右下角。border-box
: 默认值,将位置相对于边框框。margin-box
: 位置相对于边距框fill-box
: 位置相对于对象边界框stroke-box
: 位置相对于描边边界框view-box
: 使用最近的 SVG 视窗作为参考框。 如果为创建 SVG 视窗的元素指定了viewBox
属性,则参考框位于viewBox
属性建立的坐标系的原点处,参考框的尺寸设置为viewBox
属性的width
和height
值。initial
: 应用属性的默认设置,即border-box
inherit
: 采用父元素的mask-origin
值。unset
: 从元素中删除当前mask-origin
。
使用多个值
此属性可以接受逗号分隔的遮罩原点值列表,其中每个值都应用于在 mask-image
属性中指定的对应遮罩层图像。 在以下示例中,第一个值指定第一个图像的原点,第二个值指定第二个图像的原点,依此类推。
.element {
mask-image: url(image1.png), url(image2.png), url(image3.png);
mask-origin: padding-box, border-box, content-box;
}
笔记
- 对于没有关联 CSS 布局框的 SVG 元素,值
content-box
、padding-box
和border-box
计算为fill-box
。 - 对于具有关联 CSS 布局框的元素,值
fill-box
、stroke-box
和view-box
计算为mask-origin
的initial
值,即border-box
。
演示
当我们重复使用蒙版层图像时,第一个实例将被定位在指定定位区域的左上角,然后根据mask-repeat
属性的值从该位置开始重复。
在下面的演示中更改mask-origin
的值,以更好地了解发生了什么。
浏览器支持
IE | Edge | Firefox | Chrome | Safari | Opera |
---|---|---|---|---|---|
否 | 79+ | 53+ | 全部 | 4+ | 15+ |
Android Chrome | Android Firefox | Android 浏览器 | iOS Safari | Opera Mobile |
---|---|---|---|---|
全部 | 全部 | 全部 | 全部 | 59+ |
相关信息
相关属性
mask-clip
.element { mask-clip: padding-box; }
mask-image
.element { mask-image: url(star.svg); }
mask-mode
.element { mask-mode: alpha; }
mask-position
.element { mask-position: 20px center; }
mask-repeat
.element { mask-repeat: repeat-y; }
mask-size
.element { mask-size: 200px 100px; }
mask-type
.element { mask-type: alpha; }