是否可以background-image使用 CSS 来定位 SVG?
.color {
background-color: #fff;
color: #fff;
}
.svg {
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 43'><path class='color' d='M 55.584673,43.175632 36.75281,22.967243 0,43.175632 40.42403,0 59.71135,20.208389 96,0 Z' /></svg>");
}
Run Code Online (Sandbox Code Playgroud)
您的代码运行良好,如下所示。但是,如果您的 SVG 包含与用于将 SVG 图像放置在 中的引号相同的引号,您可能会遇到问题url()。它们需要被引用\"或替换。您还可以考虑使用 base64 编码对 SVG 图像进行编码,但这会使您的 CSS 尺寸更大。
svg {
background-color: lightgrey;
}
.color {
fill: blue;
}
.svg-plain {
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 43'><path class='color' d='M 55.584673,43.175632 36.75281,22.967243 0,43.175632 40.42403,0 59.71135,20.208389 96,0 Z' /></svg>");
}
.svg-base64 {
background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA5NiA0Myc+PHBhdGggY2xhc3M9J2NvbG9yJyBkPSdNIDU1LjU4NDY3Myw0My4xNzU2MzIgMzYuNzUyODEsMjIuOTY3MjQzIDAsNDMuMTc1NjMyIDQwLjQyNDAzLDAgNTkuNzExMzUsMjAuMjA4Mzg5IDk2LDAgWicgLz48L3N2Zz4=")
}
.svg, svg {
width: 100px;
height: 100px;
background-position: center;
background-repeat: no-repeat;
background-color: lightgrey;
margin: 5px;
}Run Code Online (Sandbox Code Playgroud)
<div class="svg svg-plain"></div>
<div class="svg svg-base64"></div>
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 43'><path class='color' d='M 55.584673,43.175632 36.75281,22.967243 0,43.175632 40.42403,0 59.71135,20.208389 96,0 Z' /></svg>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16212 次 |
| 最近记录: |