你對CSS渲染速度的概念是否了解,這裡和大家分享一下10條影響CSS渲染速度的寫法,相信本文介紹一定會讓你有所收獲。
10條影響CSS渲染速度的寫法
這篇文章主要寫的提高網頁在客戶端浏覽器的渲染速度的CSS部分,暫時總結了10條。
1、*{}#zishu*{}盡量避開
由於不同浏覽器對Html標簽的解釋有差異,所以最終的網頁效果在不同的浏覽器中可能是不一樣的,為了消除這方面的風險,設計者通常會在CSS的一個始就把所有標簽的默認屬性全部去除,以達到所有簽標屬性值都統一的效果。所以就有了*通配符。*會遍歷所有的標簽;
- *{margin:0;padding:0}
如果這樣寫,頁面中所有的標簽的margin全是0;padding也是0;
- #zishu*{margin:0;padding:0}
如果這樣寫,在id等於zishu下邊的所有標簽的margin全是0;padding也是0;
這樣寫的問題是:
a.遍歷會消耗很多的時間,如果你的Html代碼寫的不規范或是某一簽標沒有必合,這個時間可能還會更長;
b.很多的標簽本來就沒有這個屬性或屬性本身就是統一的,那麼更給設置一次,也有時間的開消;
建議的的解決辦法:
a.不要去使用生僻的標簽,因為這些標簽往往在不同浏覽器中解釋出來的效果不一樣;所以你要盡可能的去使用那些常用的標簽;
b.不要使用*;而是把你常用到的這些標簽進行處理;例如:body,li,p,h1{margin:0;padding:0}
2、濾鏡的一些東西不要去用
IE的一些濾鏡在Firefox中不支持,往往寫一些效果時你還是使用CSSHACK;而濾鏡是一個非常毫資源的東西;特別是一些羽化、陰影和一個前透明的效果;
例如一個陰影效果:
- <style>
- body{margin:100px;}
- #login_b{width:200px;height:200px;background:#000;
- -moz-opacity:0.2;filter:alpha(opacity=20);margin:
- -30px00600px;position:absolute;}
- #login_t{z-index:10;border:1pxsolid#006600;
- width:200px;height:200px;background:#FFF;
- margin:-35px00595px;position:absolute;}
- #info{background:#009900;height:155px;}
- < span>style>
- <dividdivid="info">
- <dividdivid="login_t">test< span>div>
- <dividdivid="login_b">< span>div>
- < span>div>
例子的鏈接為:http://www.zishu.cn/blogvIEw.ASP?logID=610
百姓網的登陸部分使用了陰影效果:http://shanghai.baixing.com/wo/denglu
建議的解決辦法:
a.能不使用就不要使用,一方面兼容問題;很多效果只能在IE中使用;
b.就本例而言,如果非要這樣在的效果,建議用圖片作背景;(只說優化速度,實際應用還是可以小部分用,有人可能會說,用圖片還多一個HTTP請求呢,呵呵……)
一個非常好的例子,就是在今年512大地震時,很多網站一夜之間全部變成了灰色,他們只用了一行CSS代碼:
查看復制打印
- body{filter:gray;}
- body{filter:gray;}
但,你會看會看到這些網頁非常的慢,打開後你的CPU也會飙升,不誇張的說,如果你的電腦配置差,干死你也不為過。[mrgreen]