腾讯、新浪为什么把CSS直接写在页面里?

网络整理 - 07-27

在看腾讯(),新浪()这些大网站的布局的时候,发现了一个问题,为什么他们会把css直接挂在页面上面,而不是分离开来作为一个css文件link进去。

这是应付超大流量的一种优化方案。
为提高速度,他们的外部连接文件一般都存储在单独的服务器上,例如img.****.com,如果这个服务器挂掉,整个首页就挂掉了。放在页面内,比较安全。用户访问页面时,不会因为CSS加载不上,而造成裸页面。

那这样做是不是增加了维护的成本?如果写在页面上,不便于修改和管理。

他有可能是单独的css文件。在头部用include包含一个php文件,而这个php文件负责生成css文件。
实际上还是在维护一个单独的样式表。只是放上去的时候合并到一起。不会增加维护成本。

用PHP把CSS调用到页面中,服务器也否也有开销?

缓掉,首页缓存成静态页。