我使用的是Angular 15。我注意到奇怪的事情,当我添加svg圆圈的标签,它显示正常,但当我把它作为只是原始svg它显示奇怪。请参见屏幕截图。
通过img标签添加的图标:enter image description here图标仅由原始svg添加:enter image description here
图标代码:
<svg id="Group_10215" data-name="Group 10215" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 20 20">
<defs>
<clipPath id="clip-path">
<rect id="Shape_103" data-name="Shape 103" width="20" height="20" rx="10" fill="none" stroke="#140f4b" stroke-width="1.5"/>
</clipPath>
</defs>
<g id="Shape_103-2" data-name="Shape 103" fill="none" stroke="#140f4b" stroke-width="1.5">
<rect width="20" height="20" rx="10" stroke="none"/>
<rect x="0.75" y="0.75" width="18.5" height="18.5" rx="9.25" fill="none"/>
</g>
<g id="Mask_Group_109" data-name="Mask Group 109" clip-path="url(#clip-path)">
<path id="Path_12329" data-name="Path 12329" d="M11,0H0V22H11Z" transform="translate(-1 -1)" fill="#140f4b"/>
</g>
</svg>
有人知道怎么回事吗?
我想通过添加原始svg到html中来正确显示圆形svg
1条答案
按热度按时间pkwftd7m1#
就像评论的那样,你可能有更多的相同的ID,然后剪辑路径就乱了。一般来说,ID必须是唯一的,然后尽量避免使用太多。您可以在一个单独的SVG元素中定义clip-path,然后让需要该clip-path的所有其他元素引用它。
您还可以简化SVG(并删除所有ID):