使用非正统的 `head {display: block}` 向用户显示文本?
using the unorthodox `head {display: block}` to show text to user?
以下示例表明,通过使用 CSS 伪元素,您可以在浏览器中呈现 <link>
或 <meta>
标记中的 "embedded" 一些可见文本.
http://codepen.io/SitePoint/pen/KporNg
这种不寻常的技术会在页面上显示文本,但文本似乎无法选择(至少在 Chrome 49 中),我的问题是,文本显示在这样可以抓取吗? …我的意思是:
屏幕reader如何看到这段文字?
蜘蛛怎么看这个? ... 比如 googlebot?是吗?
这应该有助于回答您的问题:http://www.sitepoint.com/is-generated-content-actually-content/
根据作者的指示:
Generated content is not content at all, it’s presentation.
我认为由于从 pseudo-element 生成的内容是演示文稿的一部分,而不是页面的结构,因此 spiders/bots 可能不会选择它。
一个快速示例 fiddle 和代码位:
.text:before {
content: "Hello World!";
}
也支持这个说法。如果您检查元素并检查 div,您会注意到 html 中显示的是“:before”,而不是 pseudo-element 中文本的直接输出(即: "Hello World!")。由于大多数机器人不会扫描样式表,因此它很可能不会被拾取。
关于屏幕阅读器,我认为这取决于 reader 的类型及其设置的解释。这是一个有趣的 link,来自一个名为 WebAim 的流行 reader,它似乎也解释了 CSS 的一部分:http://webaim.org/techniques/css/invisiblecontent/
唯一可以确定的方法是亲自测试并查看,但正如上面一位评论者所说,我不相信屏幕 reader 是标准化的。
以下示例表明,通过使用 CSS 伪元素,您可以在浏览器中呈现 <link>
或 <meta>
标记中的 "embedded" 一些可见文本.
http://codepen.io/SitePoint/pen/KporNg
这种不寻常的技术会在页面上显示文本,但文本似乎无法选择(至少在 Chrome 49 中),我的问题是,文本显示在这样可以抓取吗? …我的意思是:
屏幕reader如何看到这段文字?
蜘蛛怎么看这个? ... 比如 googlebot?是吗?
这应该有助于回答您的问题:http://www.sitepoint.com/is-generated-content-actually-content/
根据作者的指示:
Generated content is not content at all, it’s presentation.
我认为由于从 pseudo-element 生成的内容是演示文稿的一部分,而不是页面的结构,因此 spiders/bots 可能不会选择它。
一个快速示例 fiddle 和代码位:
.text:before {
content: "Hello World!";
}
也支持这个说法。如果您检查元素并检查 div,您会注意到 html 中显示的是“:before”,而不是 pseudo-element 中文本的直接输出(即: "Hello World!")。由于大多数机器人不会扫描样式表,因此它很可能不会被拾取。
关于屏幕阅读器,我认为这取决于 reader 的类型及其设置的解释。这是一个有趣的 link,来自一个名为 WebAim 的流行 reader,它似乎也解释了 CSS 的一部分:http://webaim.org/techniques/css/invisiblecontent/ 唯一可以确定的方法是亲自测试并查看,但正如上面一位评论者所说,我不相信屏幕 reader 是标准化的。