在实现 SVG sprite 时,<svg>
会创建一个元素并通过该元素引用 svg 元素<use>
。然后使用隐藏包含<svg>
元素style="display: none;"
clip-Path 属性不会呈现,但路径会呈现。这使我的路径看起来与我想要的不同。
如何使用 svg<use xlink:href="#"/>
引用具有剪辑路径的元素?
我使用 grunt-svg-store 创建了我的 svg sprite,但已将这个示例简化为问答格式https://css-tricks.com/svg-sprites-use-better-icon-fonts/
<svg id="svg-test" style="display: none;">
<clipPath id="my-clip-1">
<circle id="circle-1" cx="50" cy="50" r="50" />
</clipPath>
<path id="svg-test-reference" clip-path="url(#my-clip-1)" d="M10-39.288h80v80H10z" />
</svg>
<!-- Reference SVG <path> by ID with Use -->
<svg class="svg-item" viewBox="0 0 100 100">
<use xlink:href="#svg-test-reference" />
</svg>