《高性能网站建设指南》笔记

花了几个小时看完了o'reilly出版的《高性能网站建设指南》,不是很厚的一本书,看的不是很仔细,因为这本书主要是对yslow的给出的14条网站建议做了一个阐述,而这14条建议,我想做网站的应该早就知道的吧。

 

看完之后,对我来说印象比较深刻的有以下几点:

 

1. 为什么要把css引用放在顶部,js引用放在底部。以前只是知道最好在页面上把css放在<head>中,而把js放在页面最后,却不是很了解为什么要这么做。看完这本书才明白,因为css会影响页面的渲染,所以浏览器一般为了避免重绘dom,都是等css全部加载完了才把dom展现出来,这样一来,如果把css放在底部,就会造成“空白页”,用户体验不好,因为页面加载的过程其实对用户来说也相当于一种“进度条”,如果是空白页,用户就不知道页面出了什么问题。此外,css放在底部还会造成页面的“闪动”,dom本来加载完了,到了页面最底部,加载了一个css,引起了页面的重绘,所以会造成页面“闪动”。而js的加载会阻塞dom的并行加载,为什么呢?因为js中有document.write这样的命令可能会修改dom,所以浏览器碰到js时都是暂停dom的加载,直到js加载完。所以一般最好把js放在底部

 

2. 最好不要用css表达式。第一,浏览器支持不好,第二,能用css表达式的地方基本都有替代的解决方案,第三,对性能影响较大。为什么这么说?举个例子:css:expression(document.width>200?document.width=200:document.width=100),(可能写的不对,我对css不熟,但大概意思就是当页面宽度大于200时,设置宽度为200,否则是100),关键问题在于这个表达式什么时候触发,书中说当拖动页面的滚动条,甚至鼠标经过页面时,都会触发这个表达式来重绘页面,一个测试方法就是在这个表达式中加入一段计数的js代码,当拖动页面时,会看到计数器的数字是上千甚至上万,所以对性能的影响还是挺大的。

 

其他的都很好理解,就没有什么好说的了,可以参考一下yslow的14条建议。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值