1、应该将 CSS 放置于结构的上方(一般放置于 head 元素内)。CSS 是解释型语言,Firefox 和 IE 在等待 CSS 传输完成之前不会渲染任何东西。只有将 CSS 前置,才可在浏览器解析结构时,对页面进行渲染。
This causes the blank white screen problem. The page is totally blank until the stylesheet at the bottom is downloaded, on the order of 6-10 seconds for this page. The browser is waiting for the stylesheet to be loaded before it renders anything else in the page, even the static text.
导致的问题就是,页面会有一段时间“朴素”,突然之间又“华丽”,用户体验很不好。
2、尽量使用 <link rel=”stylesheet” href=”http://www.planabc/yuanxin.css” type=”text/css”> 的样式导入方式,而减少 @import 的使用,更勿使用多层嵌套的 @import 。因为在 IE 里, @import 相当于将 <link> 放在页面尾部。
This is a valid syntax, but, even though it’s in the document’s HEAD, it breaks progressive rendering and instead causes the blank white screen and Flash of Unstyled Content problems.
扩展阅读:


共有14 条评论
怿飞很高产呀, 呵呵~
记得yahoo曾经有建议说, 要提高首页的加载速度建议将css和js嵌入到首页html代码里面, 是这样的吗?
Opera始终有一段时间的朴素,不管你是否将stylesheet放在头部。
@Robin 是这样的,Yahoo!是推荐首页的CSS和JS内联(inline),因为这样可以减少HTTP请求数,毕竟首页的浏览量是超级高的。
@Lunatic Sun 对于能做出的优化,我们尽量去做,不一定是最好的,但至少可以提高一定的性能。
如果英文不好,可以看翻译过的 FOUS :http://www.cheshirecat.cn/web-standards/11.htm
在css框架里一般都是用@import来导入几个样式到一个样式,最后使用这种方式导入到页面,这样也会有影响么?
FOUS有中文, 早说呀.
幸好我都是按要求在head区用link方式载入的,学习了
页面优化是大型站点一个重头戏,包括很多方面。制作人员要解决的页面本身的问题,其中有效的降低请求,降低页面K数,降低JS数量,等等基本做法.
CSS优化:一缩减其容量,二减少Background-Image的数量
其次上面怿飞说到的。
我看过Yahoo的CSS的写法,以及目前比较通用的写法,都是非常不认同。
yahoo样式大小可以缩减30%.其它各大站点也有同样的问题。特别是taobao问题非常严重。这个需要制作人员和设计师去讨论了。
有学到了一点,呵呵
@TONY 淘宝内部已经在推广优化,让优化细化到工作中去,其实在过去的日子里,我们也一直在努力优化着淘宝的页面,但有一些遗留问题还有其他,暂时还无法解决。但我们会一直努力下去。
我好像记得fouc只是旧版ie(5-)浏览器的问题
实际上,优良的页面结构,制作人员弄清楚页面流向,和浮动的流向基本能够打造一个无坚不摧的页面,基本可以经过各种浏览器的考验。且CSS K数也可以降低,看怎么去搭架子吧!
我感觉浏览量很大的网站的首页和栏目首页的css和js最好使用Internal的方式加载,减少请求数量,解决服务器维护人员的烦恼:);小网站就没有考虑这个的必要了,不过css与js文件最好压缩,可以减少文件的体积。