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

时间:2012-11-07 10:34:57

标签: css search css-content

我运行一个使用CSS伪元素的网站来插入文本。其中一个插入了CSS计数器的值(因此需要对系统进行大量的重新设计才能执行此操作而不用 CSS文本注入)。具体的CSS规则是:

.num_defn .theorem_label:after {
    content: " " counter(definition, decimal);
    counter-increment: definition;
}

并将“定义”转换为“定义1 ”(比如说)。

但是,浏览器无法搜索注入的文本。它没有看到1:如果我搜索“定义1”然后它找不到它,如果我搜索“定义。无论定义文本是什么”,那么浏览器会高兴地突出显示该行对于插入的1。因此,如果您将粗体文本想象为突出显示,它将如下所示:

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

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

因此:

  1. 在服务器端,有没有办法可以将注入的文本指定为“可搜索”?
  2. 如果没有,浏览器端是否有简单方式可以启用此功能?

1 个答案:

答案 0 :(得分:4)

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

当你想到HTML和CSS的目的时,我认为这是有道理的。您可能知道HTML旨在描述内容的语义含义,而CSS则用于控制页面的外观。因此,简而言之,如果您使用CSS将任何文本添加到您的页面,那么它应该仅仅是出于风格目的。

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

您执行此操作的方式也违背了最佳做法。因为如果你要禁用CSS,一些内容会消失。