摘要:用開啟硬件加速來提高網(wǎng)站性能轉(zhuǎn)翻譯文章,原文地址。在桌面端和移動(dòng)端用開啟硬件加速以及不會(huì)自動(dòng)開啟加速,而是由瀏覽器的緩慢的軟件渲染引擎來執(zhí)行。
翻譯文章,原文地址:http://blog.teamtreehouse.com/increase-your-sites-performance-with-hardware-accelerated-css。
你知道我們可以在瀏覽器中用css開啟硬件加速,使GPU (Graphics Processing Unit) 發(fā)揮功能,從而提升性能嗎?
現(xiàn)在大多數(shù)電腦的顯卡都支持硬件加速。鑒于此,我們可以發(fā)揮GPU的力量,從而使我們的網(wǎng)站或應(yīng)用表現(xiàn)的更為流暢。
CSS animations, transforms 以及 transitions 不會(huì)自動(dòng)開啟GPU加速,而是由瀏覽器的緩慢的軟件渲染引擎來執(zhí)行。那我們?cè)鯓硬趴梢郧袚Q到GPU模式呢,很多瀏覽器提供了某些觸發(fā)的CSS規(guī)則。
現(xiàn)在,像Chrome, FireFox, Safari, IE9+和最新版本的Opera都支持硬件加速,當(dāng)它們檢測(cè)到頁(yè)面中某個(gè)DOM元素應(yīng)用了某些CSS規(guī)則時(shí)就會(huì)開啟,最顯著的特征的元素的3D變換。
例如:
.cube {
??? -webkit-transform: translate 3 d( 250px , 250px , 250px )
??? rotate 3 d( 250px , 250px , 250px , -120 deg)
??? scale 3 d( 0.5 , 0.5 , 0.5 );
}
|
可是在一些情況下,我們并不需要對(duì)元素應(yīng)用3D變換的效果,那怎么辦呢?這時(shí)候我們可以使用個(gè)小技巧“欺騙”瀏覽器來開啟硬件加速。
雖然我們可能不想對(duì)元素應(yīng)用3D變換,可我們一樣可以開啟3D引擎。例如我們可以用transform: translateZ(0); 來開啟硬件加速 。
.cube {
??? -webkit-transform: translateZ( 0 );
??? -moz-transform: translateZ( 0 );
??? -ms-transform: translateZ( 0 );
??? -o-transform: translateZ( 0 );
??? transform: translateZ( 0 );
??? /* Other transform properties here */
}
|
在 Chrome and Safari中,當(dāng)我們使用CSS transforms 或者 animations時(shí)可能會(huì)有頁(yè)面閃爍的效果,下面的代碼可以修復(fù)此情況:
.cube {
??? -webkit-backface- visibility : hidden ;
??? -moz-backface- visibility : hidden ;
??? -ms-backface- visibility : hidden ;
??? backface- visibility : hidden ;
?
??? -webkit-perspective: 1000 ;
??? -moz-perspective: 1000 ;
??? -ms-perspective: 1000 ;
??? perspective: 1000 ;
??? /* Other transform properties here */
}
|
在webkit內(nèi)核的瀏覽器中,另一個(gè)行之有效的方法是
.cube {
??? -webkit-transform: translate 3 d( 0 , 0 , 0 );
??? -moz-transform: translate 3 d( 0 , 0 , 0 );
??? -ms-transform: translate 3 d( 0 , 0 , 0 );
??? transform: translate 3 d( 0 , 0 , 0 );
?? /* Other transform properties here */
}
|
原生的移動(dòng)端應(yīng)用(Native mobile applications)總是可以很好的運(yùn)用GPU,這是為什么它比網(wǎng)頁(yè)應(yīng)用(Web apps)表現(xiàn)更好的原因。硬件加速在移動(dòng)端尤其有用,因?yàn)樗梢杂行У臏p少資源的利用(麥時(shí)注:移動(dòng)端本身資源有限)。
只對(duì)我們需要實(shí)現(xiàn)動(dòng)畫效果的元素應(yīng)用以上方法,如果僅僅為了開啟硬件加速而隨便亂用,那是不明智的。
小心使用這些方法,如果通過你的測(cè)試,結(jié)果確是提高了性能,你才可以使用這些方法。使用GPU可能會(huì)導(dǎo)致嚴(yán)重的性能問題,因?yàn)樗黾恿藘?nèi)存的使用,而且它會(huì)減少移動(dòng)端設(shè)備的電池壽命。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/1353.html
摘要:在桌面端和移動(dòng)端用開啟硬件加速以及不會(huì)自動(dòng)開啟加速,而是由瀏覽器的緩慢的軟件渲染引擎來執(zhí)行。例如我們可以用來開啟硬件加速。 中文地址:http://www.cnblogs.com/rubylouvre/p/3471490.html 原文地址:http://blog.teamtreehouse.com/increase-your-sites-performance-with-hardwa...
摘要:前言對(duì)于前端的性能話題,從來都沒有斷絕過。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。前端發(fā)展以來,優(yōu)化方式,琳瑯滿目,有雅虎軍規(guī)等。所以,接下來我會(huì)從三個(gè)方面就前端性能進(jìn)行總結(jié)網(wǎng)絡(luò)方面操作及渲染方面數(shù)據(jù)方面。 前言 對(duì)于前端的性能話題,從來都沒有斷絕過。因?yàn)檫@個(gè)東西沒有最好,只有更好。而且往往也是業(yè)務(wù)的繁雜程度去決定優(yōu)化程度的。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。它直接影響著我們...
摘要:前言對(duì)于前端的性能話題,從來都沒有斷絕過。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。前端發(fā)展以來,優(yōu)化方式,琳瑯滿目,有雅虎軍規(guī)等。所以,接下來我會(huì)從三個(gè)方面就前端性能進(jìn)行總結(jié)網(wǎng)絡(luò)方面操作及渲染方面數(shù)據(jù)方面。 前言 對(duì)于前端的性能話題,從來都沒有斷絕過。因?yàn)檫@個(gè)東西沒有最好,只有更好。而且往往也是業(yè)務(wù)的繁雜程度去決定優(yōu)化程度的。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。它直接影響著我們...
閱讀 5265·2021-10-15 09:42
閱讀 1621·2021-09-22 16:05
閱讀 3283·2021-09-22 15:57
閱讀 3419·2019-12-27 12:06
閱讀 979·2019-08-29 15:16
閱讀 2890·2019-08-26 12:24
閱讀 393·2019-08-26 12:02
閱讀 1898·2019-08-23 16:00