是否可以通过浏览器搜索CSS生成的内容?

Loo*_*ace 8 css search css-content

我运行一个使用CSS伪元素的网站来插入文本.其中一个插入一个CSS计数器的值(因此,如果没有 CSS文本注入,它需要对系统进行大量的重新设计才能完成此操作).具体的CSS规则是:

.num_defn .theorem_label:after {
    content: " " counter(definition, decimal);
    counter-increment: definition;
}
Run Code Online (Sandbox Code Playgroud)

这将" 定义 " 转换为" 定义1 "(比如说).

但是,注入的文本不能被浏览器搜索.它没有看到1:如果我搜索"定义1"然后它找不到它,如果我搜索"定义.无论定义文本是什么",那么浏览器会高兴地突出显示除插入之外的行1.因此,如果您将粗体文本想象为突出显示,它将如下所示:

定义 1 .无论定义文本是什么

这不太理想!人们喜欢用数字来引用定义并说"在XYZ页面上看看定义1"(并且在没有超链接的情况下 - 很奇怪,我知道,但它确实发生了).

从而:

  1. 在服务器端,有什么方法可以将注入的文本指定为"可搜索"?
  2. 如果没有,浏览器端是否有一种简单的方法可以启用它?

gal*_*kas 4

据我所知没有办法。您可能可以使用 JS 来访问该信息,但这将是某种“黑客”的事情。

当您考虑 HTML 和 CSS 的用途时,我认为这是有道理的。您可能知道 HTML 旨在描述内容的语义,而 CSS 旨在控制页面的外观。简而言之,如果您使用 CSS 在页面中添加任何文本,那么它应该纯粹出于风格目的。

如果它是对您的网站访问者有意义的实际文本,您需要将其直接以 HTML 形式放置在您的网站中。

您这样做的方式也违背了最佳实践。因为如果你禁用 CSS,一些内容就会消失。