html - 是否可以通过 :after pseudo CSS selector inside a svg tag? 使用插入图像

标签 html css svg

我有一系列 <circle>通过算法在 <svg> 中动态定位.我想在每个圆圈旁边添加一个图标,我正在尝试通过:

.node:after {
      content:url(/img/icon.png);
}

选择器是正确的,因为我在 Firebug 中看到它但没有显示图标。我在尝试做一些不可能的事情吗?为什么我在某处看不到我的图标?

额外问题:是否可以相对于圆形元素的中心定位此图标。

最佳答案

我们会忽略 Firefox 中 SVG 标记中生成的内容,因此您无法通过这种方式执行此操作。您必须创建 <image>使用 javascript 的元素。

SVG 规范没有提到 :before 和 :after。它真的只在你有相对定位的 html 中才有意义,所以下一个元素会自动定位在前一个元素之后,而不是在一切都是绝对定位的 SVG 中。

您必须尝试其他浏览器,看看它是否在那里工作,但我真的不知道他们如何明智地实现它。

关于html - 是否可以通过 :after pseudo CSS selector inside a svg tag? 使用插入图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13725443/

相关文章:

javascript - 使用 jquery/javascript 触发 svg 动画

javascript - jQuery:事件 "mouseover"-类似

javascript - 缩放或裁剪背景图像而不是拉伸(stretch)它

javascript - 处理背景YouTube视频不与tubular.js一起播放

html - 在 Edge 浏览器上,如何使用 CSS 更改输入占位符文本颜色?

css - 像乐谱一样灵活的图像缩放/拉伸(stretch)

html - 使用 SVG 剪辑(或屏蔽)DIV

xml - SVG 问题 : AttValue: "or ' expected

html - 响应式网页设计断点?为什么设计用于 1280、1024、640?

css - 是否有可能在他的父元素后面有一个带有 z-index 的子元素