规则7:避免CSS表达式,从书上官网例子来看,CSS Expression的求值频率非常高,鼠标的移动,窗口的缩放均会导致CSS表达式进行求值,而且点击某文本框还会导致IE死机,这个情况真的相当严重,而且仅IE支持CSS Expression,所以还是避免使用为上策。
规则8:使用外部JavaScript及CSS
使用内联的JavaScript及CSS,降低了请求次数,但却无法利用浏览器的缓存,因为浏览器一般不会缓存HTML的动态内容。
在内联与外联的选择上应根据以下三个指标:
1.页面查看(PV):当PV比较大的时候,应倾向于使用外部文件;
2.空缓存vs完整缓存:这个要根据用户对该网站的访问周期有关;
3.组件重用:从重用的角度来看,外部文件优于内联的javascript及css;
我们可以结合内联及外部两种方式进行:
1.加载后下载
使用window.onload方法,假设页面有内联的js及css,等页面加载完成后再下载外部的JS及CSS;
2.动态内联
利用Cookies判断用户的浏览器是否有缓存,如果有则使用外部文件,没有就使用内联。
我个人更主张外部文件兼用内联结合外部JS及CSS;