【发布时间】:2012-10-24 20:29:40
【问题描述】:
从 Mozilla 开发者页面,我尝试使用 mask 属性为 CSS 重新创建 SVG 掩码。
CSS:
#canvasPreview {
mask: url(images/masks/circle2.svg#circleMask);
}
HTML:
<img id="canvasPreview" src="placehold.it/100x100"></img>
SVG:
<svg>
<mask id="circleMask" maskContentUnits="objectBoundingBox">
<circle cx="50" cy="50" r="50" fill="white" />
</mask>
</svg>
SVG 是外部引用的,而不是像 MDN 示例那样嵌入。我没有尝试嵌入它,但我不明白为什么会有帮助。有几件事我不清楚。
在 CSS 中,为什么我将 #circleMask 标识符放在 URL 之后?删除它不会使我的代码正常工作,并且在 MDN 站点规范中找到了它,所以我把它放在那里。
我的 SVG 是否正确?我必须使用
<mask>标签和id和objectBoundingBox属性吗?它们是做什么用的?
【问题讨论】: