CSS Content 属性用于将元素或伪元素的内容替换为生成的值,以便更改显示的输出。
- 它管理元素的正常呈现方式,或者何时使用图像和相关的 alt 文本代替元素。
- 它将内容定义为图片、文本、两者兼而有之,或者在伪元素和边距框的情况下根本不是,从而决定元素是否呈现。
- 匿名替换的元素是使用 content 属性引入的元素。
可能的值
- none - 当直接应用于元素时,它不起作用;当用于伪元素时,它不会生成伪元素。
- normal - 页面边距框和普通元素的默认值为 contents,但伪元素(如 ::before 和 ::after )的计算为零。
- <string> - 字符串是封装在匹配的单引号或双引号中的字符序列。在 CSS 中可以连接多个字符串值,而无需特殊的连接运算符。
- <image> - CSS 中的可显示图像由 <image> 表示,它可以作为 image-set()、<gradient>、url() 或由 element() 函数定义的网页本身的一部分给出。
- <counter> - 在 CSS 中,计数器(通常是数字)通过 <counter-reset> 和 <counter-increment> 属性生成,由 <counter> 值表示,可以使用 counter() 或 counters() 方法显示。
- counter() - 类似于 counter(name) 或 counter(name, style),显示具有指定样式 <list-style-type>(默认为十进制)的文本,该样式表示伪元素范围内具有给定名称的最内层计数器的值。
- counters() - 以 counter(name, string) 或 counter(name, string, style) 形式生成文本,在伪元素中显示具有指定名称的最内层计数器的值,使用提供的 <list-style-type> 进行格式化,默认选择小数。
- <quote> - 根据语言和位置而变化的关键字包含在 <quote> 数据类型中。
- open-quote 和 close-quote - 在 quotes 属性中定义的匹配字符串用于替换这些值。
- no-open-quote 和 no-close-quote - 不添加内容,但调整报价的嵌套级别,增加或减少它。
- attr(x) - CSS 函数 attr(x) 从源元素或选定元素中检索属性的值,根据文档语言生成空字符串或未解析的字符串。
- alternative text: / <string> | <counter> - 在支持它的浏览器中,在 <content-list> 项中的文本字符串或计数器前使用正斜杠作为替代文本,这适用于屏幕阅读器,但在不受支持的浏览器中可能会被忽略,<string> 或 <counter> 表示替代文本。
语法
适用于
所有元素、遵守树的伪元素和页边距框
CSS Content - 追加字符串
在以下示例中,字符串根据其分配的类动态追加到列表项的内容中。
CSS Content - 行情
在以下示例中,引号文本由对比鲜明的彩色引号整齐地框住,从而增加了其视觉效果。
- 使用较大的红色引号和浅灰色背景,与绿色文本形成对比。
- 生成的引号类型取决于语言,可以通过将 content 属性值设置为 no-open-quote 和/或 no-close-quote 来关闭,或者将 quotes 属性设置为 none。
CSS Content - 向列表项计数器添加文本
- 以下示例使用夹在两个 <strings> 之间的计数器为其中的列表项创建详细的标记。
- 在此示例中,通过在两个<字符串>之间放置计数器,为无序列表中的列表项创建详细标记。
- 内容中的每个项目都有一个前缀、一个空格、一个空格、一个冒号和另一个空格。在大多数浏览器中,counters() 方法定义了一个由句点分隔的数字项计数器。
CSS content - 具有属性值的字符串
- 以下示例使用属性选择器来定位安全链接,并设计用于打印样式表。
- 使用 ::after 伪元素,它将 href 属性的值附加到链接内容之后。
- 生成的内容显示为 URL: [href value],用括号括起来,这改进了安全链接以适合打印的格式呈现的方式。
CSS 自定义 - 添加带有替代文本的图像
在以下示例中,a::before 伪元素用于在链接文本之前插入图像。
对于不启用图像渲染的浏览器,它包含占位符图片形式的替代文本和回退材料。
CSS content - 用 url() 替换元素
在给出的示例中,content: url() CSS 属性用于动态替换 #custom 替换元素的内容,并使用 URL“content.png”提供的图像。此外,如果不允许替换元素,则 span::after 选择器会提供回退功能,该选择器会在括号中显示元素的 ID 属性。
CSS content - 用<梯度>替换元素
在以下示例中,元素的内容被 CSS 渐变替换,更准确地说,是 linear-gradient()。
对于同时启用元素内容替换和替代文本的浏览器,@supports 规则用于提供替换文本支持并引入 repeating-linear-gradient()。