html - 不显示 CSS 背景 SVG

标签 html css svg

我有这个 off.svg 图标,我想通过 css 插入它:

<svg height="16" width="16" >
  <circle cx="8" cy="8" r="7"  fill="red" />
</svg>

CSS:

.off-btn {
    background:url(../icons/off.svg)no-repeat;
  }

html:

<span class="off-btn" title="offline">offline</span>

但是 svg 图标没有出现。

然而,当我将 off.svg 保存为 off.png 并将 css 更改为:

.off-btn {
    background:url(../icons/off.png)no-repeat;
  }

圆圈出现了。我在 Chrome 浏览器上对此进行了测试。

这里有什么问题?我该如何解决?

最佳答案

您在 SVG 文件中缺少 SVG 命名空间。如果您尝试在浏览器中加载它,它会告诉您。

<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" >
  <circle cx="8" cy="8" r="7"  fill="red" />
</svg>

关于html - 不显示 CSS 背景 SVG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57690809/

相关文章:

html - 如何创建圆形图表?

javascript - 按计算尺寸订购的试剂组件

css - 无法弄清楚为什么网络字体不起作用

html - 导航下拉显示太左

html - 转向 SVG 图标——如何将它们与代码分开?

css - 某些 SVG 符号在浏览器中不可见

javascript - 单击另一行时使表格行消失

c# - HTML - 我如何知道所有框架何时加载?

CSS - 如果我制作两条对 Angular 线以形成 x 有没有办法将文本放置在交点处?

javascript - 使用 Vanilla JavaScript 操作 SVG 路径坐标