目录
使用 CSS :before 和 :after 伪元素设置内联 SVG 样式:一个困境
内联 SVG 作为替换元素
生成的内容和替换的元素
替代方法
W3C 建议的解决方案::outside Pseudo-Element
首页 web前端 css教程 CSS `:before` 和 `:after` 伪元素可以设置内联 SVG 的样式吗?

CSS `:before` 和 `:after` 伪元素可以设置内联 SVG 的样式吗?

Nov 26, 2024 am 06:46 AM

Can CSS `:before` and `:after` Pseudo-elements Style Inline SVGs?

使用 CSS :before 和 :after 伪元素设置内联 SVG 样式:一个困境

虽然 :before 和 :after 等 CSS 伪元素通常用于样式化HTML 元素及其在内联 SVG 上的应用提出了独特的挑战。了解替换元素和生成内容的细微差别对于解决此问题至关重要。

内联 SVG 作为替换元素

内联 SVG 通常被视为 HTML 中的替换元素。替换元素是指用外部对象(例如图像或视频)替换文本的元素。它们显示为单个单元,不能包含任何文本节点。

这种区别很重要,因为 CSS 生成的内容(例如 :before 和 :after 伪元素创建的内容)只能应用于内联元素。内联元素是那些与周围文本一起流动的元素,它们可以包含文本节点。

生成的内容和替换的元素

CSS :before 和 :after 伪元素创建生成的内容,其中插入到选择器匹配的元素中。但是,由于内联 SVG 是替换元素,因此它们无法附加生成的内容。这是因为内容是添加在元素内部的,而替换的元素不允许嵌套内容。

替代方法

要克服此限制,可以探索替代方法:

  • 带有伪元素的外部 SVG: 考虑将 SVG 作为外部文件加载并使用 CSS 来将内容插入到父元素中。
  • 包装元素: 将内联 SVG 包装在包含的 div 中,并将伪元素应用于包装而不是 SVG 本身。

W3C 建议的解决方案::outside Pseudo-Element

在 W3C 中在文档“CSS3 生成和替换的内容模块”中,引入了一个名为 :outside 的伪元素。 :outside 允许将生成的内容放置在关联的替换元素之外,这可能为内联 SVG 样式提供解决方案。但需要注意的是,此功能尚未广泛实现,并且可能并非所有浏览器都支持。

以上是CSS `:before` 和 `:after` 伪元素可以设置内联 SVG 的样式吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1666
14
CakePHP 教程
1426
52
Laravel 教程
1328
25
PHP教程
1273
29
C# 教程
1254
24
静态表单提供商的比较 静态表单提供商的比较 Apr 16, 2025 am 11:20 AM

让我们尝试在这里造成一个术语:“静态表单提供商”。你带上html

使Sass更快的概念证明 使Sass更快的概念证明 Apr 16, 2025 am 10:38 AM

在一个新项目开始时,Sass汇编发生在眼睛的眨眼中。感觉很棒,尤其是当它与browsersync配对时,它重新加载

每周平台新闻:HTML加载属性,主要的ARIA规格以及从iframe转移到Shadow dom 每周平台新闻:HTML加载属性,主要的ARIA规格以及从iframe转移到Shadow dom Apr 17, 2025 am 10:55 AM

在本周的平台新闻综述中,Chrome引入了一个用于加载的新属性,Web开发人员的可访问性规范以及BBC Move

带有HTML对话框元素的一些动手 带有HTML对话框元素的一些动手 Apr 16, 2025 am 11:33 AM

这是我第一次查看HTML元素。我已经意识到了一段时间,但是尚未将其旋转。它很酷,

纸张形式 纸张形式 Apr 16, 2025 am 11:24 AM

购买或建造是技术的经典辩论。自己构建东西可能会感觉更便宜,因为您的信用卡账单上没有订单项,但是

'订阅播客”链接应在哪里? '订阅播客”链接应在哪里? Apr 16, 2025 pm 12:04 PM

有一段时间,iTunes是播客中的大狗,因此,如果您将“订阅播客”链接到喜欢:

它全部都在头上:管理带有React头盔的React Power Site的文档头 它全部都在头上:管理带有React头盔的React Power Site的文档头 Apr 15, 2025 am 11:01 AM

文档负责人可能不是网站上最迷人的部分,但是其中所处的内容对于您的网站的成功也一样重要

托管您自己的非JavaScript分析的选项 托管您自己的非JavaScript分析的选项 Apr 15, 2025 am 11:09 AM

有很多分析平台可帮助您跟踪网站上的访问者和使用数据。也许最著名的是Google Analytics(广泛使用)

See all articles