為何無法將"<line>"元素當作"<clipPath>"的子元素?
P粉295616170
P粉295616170 2023-09-16 11:00:51
0
1
746

<circle>的工作範例

<svg viewBox="-20 -20 150 150" xmlns="http://www.w3.org/2000/svg">
  <clipPath id="myClip" clipPathUnits="objectBoundingBox">
    <circle cx=".5" cy=".5" r=".5" />
  </clipPath>
  <rect x="0" width="100" height="100" rx="15" clip-path="url(#myClip)" />
</svg>

相同的但是使用<line> - 不起作用

<svg viewBox="-20 -20 150 150" xmlns="http://www.w3.org/2000/svg">
  <clipPath id="myClip" clipPathUnits="objectBoundingBox">
    <line x1="0" y1="0" x2="1" y2="1" />
  </clipPath>
  <rect x="0" width="100" height="100" rx="15" clip-path="url(#myClip)" />
</svg>

我期望看到正方形的一部分,但是沒有顯示任何內容

似乎不能在#中使用

P粉295616170
P粉295616170

全部回覆(1)
P粉427877676

clippath的替代方案可以是<mask>。優點是可以使用任何SVG元素進行“繪製”。

<svg height="80vh" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
  <mask id="m1" maskContentUnits="objectBoundingBox">
    <line x1="0" y1="0" x2="1" y2="1" stroke="white" stroke-width=".5" />
  </mask>
  <rect width="100" height="100" rx="15" mask="url(#m1)" />
</svg>
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板