mask
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since â¨2015å¹´7æâ©.
å¨ SVG ä¸ï¼ä½ å¯ä»¥æä¸ä¸ªéæçé®ç½©å±åå½å对象åæï¼å½¢æèæ¯ãéæé®ç½©å±å¯ä»¥æ¯ä»»ä½å
¶ä»å¾å½¢å¯¹è±¡æè
<g>å
ç´ ãmaskå
ç´ ç¨äºå®ä¹è¿æ ·çé®ç½©å
ç´ ã屿§maskç¨æ¥å¼ç¨ä¸ä¸ªé®ç½©å
ç´ ã
使ç¨åºæ¯
| ç±»å« | 容å¨å ç´ |
|---|---|
| å 许çå 容 | ä»»ææ°éãä»»æé¡ºåºçä¸åå
ç´ ï¼ å¨ç»å ç´ æè¿°æ§å ç´ å½¢ç¶å ç´ ç»æåå ç´ æ¸åå ç´ <a>ã<clipPath>ã<filter>ã<foreignObject>ã<image>ã<marker>ã<mask>ã<pattern>ã<script>ã<style>ã<switch>ã<text>ã<view> |
示ä¾
html
<svg viewBox="-10 -10 120 120">
<mask id="myMask">
<!-- ç½è²åç´ ä¸çææå
容é½å°å¯è§ -->
<rect x="0" y="0" width="100" height="100" fill="white" />
<!-- é»è²åç´ ä¸çææå
容é½å°ä¸å¯è§ -->
<path
d="M10,35 A20,20,0,0,1,50,35 A20,20,0,0,1,90,35 Q90,65,50,95 Q10,65,10,35 Z"
fill="black" />
</mask>
<polygon points="-10,110 110,110 110,-10" fill="orange" />
<!-- åºç¨æ¤èçåï¼æä»¬å¨ååä¸âæâä¸ä¸ªå¿å½¢å -->
<circle cx="50" cy="50" r="50" mask="url(#myMask)" />
</svg>
屿§
>å ¨å±å±æ§
䏿屿§
DOM æ¥å£
该å
ç´ å®ç°äº SVGMaskElement æ¥å£ã