【问题标题】:Reference inline SVG in CSS pseudo element?在 CSS 伪元素中引用内联 SVG?
【发布时间】:2015-06-30 01:29:21
【问题描述】:

这是一个长镜头......我希望在每个 h3 元素之前出现一个 svg 形状,但它会随着它出现的 div 的类而改变颜色。我知道我不能这样做通过“内容”属性引用单独的 svg 文件。

有没有办法通过引用内联 svg 来做到这一点 - 通过 content 属性或其他方式?!由于网站上的实际文本将由无法使用 html 的用户编写,因此我不能简单地在每个 h3 元素之前对其进行硬编码...

谢谢!

【问题讨论】:

  • 不,我不这么认为,您可以创建一个自定义图标字体并使用它。 content 属性(在伪元素中)将自动继承h3 的文本颜色。

标签: css svg


【解决方案1】:

很遗憾,这是不可能的。您需要访问 svg 的 strokefill 属性来更改颜色。添加到伪元素的content 属性的图像(例如content: url(my.svg)generated content,因此应该只将其视为平面图像。只有作为伪元素的“盒子”才能通过css修改.

理想情况下,您会将 svg 内联注入 DOM。但是,您仍然需要编辑 h3 文本的 color 属性以及 svg 的 strokefill 属性。正如 Paulie_D 在他的评论中提到的,图标字体可以解决这个问题并从 h3 标签继承 color。您甚至可以使用 this 之类的 svg 创建自定义图标字体。

【讨论】:

  • 太棒了 - 效果很好 - 谢谢你和@Paulie_D
猜你喜欢
  • 2018-08-07
  • 2011-11-12
  • 2016-01-19
  • 2013-12-06
  • 1970-01-01
  • 2012-12-17
  • 2021-09-04
  • 1970-01-01
相关资源
最近更新 更多