小编典典

用背景图像填充SVG路径元素

html

是否可以background-image为SVG <path>元素设置a ?

例如,如果设置了element class="wall",则CSS样式.wall {fill: red;}有效,但.wall{background-image: url(wall.jpg)}都不起作用.wall {background- color: red;}


阅读 634

收藏
2020-05-10

共1个答案

小编典典

您可以通过将背景变成图案来实现:

<defs>
  <pattern id="img1" patternUnits="userSpaceOnUse" width="100" height="100">
    <image xlink:href="wall.jpg" x="0" y="0" width="100" height="100" />
  </pattern>
</defs>

根据您的图像调整宽度和高度,然后从这样的路径中引用它:

<path d="M5,50
         l0,100 l100,0 l0,-100 l-100,0
         M215,100
         a50,50 0 1 1 -100,0 50,50 0 1 1 100,0
         M265,50
         l50,100 l-100,0 l50,-100
         z"
  fill="url(#img1)" />
2020-05-10