为什么搜索引擎在其主页中使用嵌入式样式表而不是外部样式表?

时间:2015-07-27 19:53:50

标签: css search-engine webpage

据我所知,级联样式表(CSS)可以三种方式应用于HTML文档:

  • 内联样式(配置目标元素的style属性)
  • 嵌入式样式表(将{css规则放在style元素中)
  • 外部样式表(链接到.css文件)

内联样式通常被认为是反模式,因为表示和结构的界限太接近维护。 嵌入式样式表使用style部分中的一个或多个<head>标记,从而更好地将演示文稿与内容分离。但样式表只能在此HTML文档中使用。相比之下,外部样式表通常被认为是更好的做法,因为css规则可以在多个HTML文档中重用。

但我发现所有搜索引擎(例如GoogleBingYahoo都使用嵌入式样式表而不是主页中的外部对应式。为什么他们不能直接链接到.css文件?他们主要担心的是什么?表现还是什么?他们如何以这种方式缓存css规则?

2 个答案:

答案 0 :(得分:3)

如果我不得不猜测,他们会这样做,因为对他们来说,浏览器加载单独的CSS文件所需的额外100毫秒非常重要。此外,这可以保证在没有CSS加载的情况下HTML也永远不会加载,因此用户不会看到没有样式页面的风险。

我认为当你处理一个淫秽的流量时,也可能会有一些性能上的好处,尽管这意味着处理尽可能少的请求,即使它意味着你使用更多的带宽(然而,这是我的更多猜测。

这些网站都使用服务器端脚本,这意味着他们可以轻松地使CSS规则在所有页面中保持一致。例如,他们可以拥有一个CSS文件,在将它们发送到您的Web浏览器之前,它们会自动注入每个页面。在他们的结尾,他们仍然只有一个CSS文件需要维护,即使在你的最后,看起来他们在每个页面上都有单独的CSS。

所有这些都说,这并不意味着你不应该从一个单独的文件中加载你的CSS;对于每天投放数十亿页的公司来说,有意义的可能对您的项目没有意义。

答案 1 :(得分:0)

在我自己的网站上,我使用嵌入式缩小样式表,这就是我进行切换的原因。

  1. 浏览器不必另外请求下载我的样式表
  2. 这是一个不仅仅是网页的应用程序,动态生成样式。这意味着在我的开发机器上我仍然使用常规的外部CSS。
  3. 页面的内容是gzip-ed,这使得最终文件的大小非常小。这也意味着下载非常快。
  4. 您仍然可以遵循开发计算机上的最佳做法。如果您正在构建应用程序,则可以使用构建过程来优化它以获得最佳性能。

    另外很高兴看到您的网站在Google Page Speed上获得100%的分数:)