明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

javascript_怎么用js修正瀏覽器css私有屬性處理詳細(xì)說明

[摘要]軟件等級(jí):更新時(shí)間:2016-04-11JavaScript 2016語言精髓與編程實(shí)踐(高清pdf版)立即下載javascript_怎樣用js修正瀏覽器css私有屬性詳解javascript_怎樣...
JavaScript 2016語言精髓與編程實(shí)踐(高清pdf版)

軟件等級(jí):

更新時(shí)間:2016-04-11

JavaScript 2016語言精髓與編程實(shí)踐(高清pdf版)

javascript_怎樣用js修正瀏覽器css私有屬性詳解

javascript_怎樣用js修正瀏覽器css私有屬性詳解:從某博客的JS文件里學(xué)習(xí)到的~所以本著共享的精神!其實(shí)我也不知道這種技術(shù)叫啥目前有很多css屬性都是私有方式實(shí)現(xiàn)的,想用就要加一堆破前綴,-moz-,-ms-,-o-,-webkit-;如果在樣式表里改一個(gè)值就需要從新把所由的都改一遍非常麻煩。

或者用dom style去設(shè)置一個(gè)元素的style也非常麻煩,大部分都是駝峰式的,firefox是個(gè)另類,MozTransition要處理成這樣的,不管用正則還是別的方式都不是很好處理。

小的簡(jiǎn)單封裝了一個(gè)方法,用起來還不錯(cuò)。

用dom style的cssText直接注入或者,調(diào)用后拷貝到樣式表都比較方便。


 

 

fixCSS('transition','all .8s ease-in 1s');
function fixCSS(a,p){
return '-moz-#:@;-ms-#:@;-o-#:@;-webkit-#:@;#:@;'.replace(/#:@/g,a+':'+p);
}
 

 

調(diào)用這個(gè)方法后會(huì)返回這樣的字符串  

 

"-moz-transition:all .8s ease-in 1s;-ms-transition:all .8s ease-in 1s;-o-transition:all .8s ease-in 1s;-webkit-transition:all .8s ease-in 1s;transition:all .8s ease-in 1s;"

 

用cssText設(shè)置后,瀏覽器只會(huì)識(shí)別自己私有的那部分代碼,其他會(huì)忽略掉,所以還是比較理想的。如果要修改樣式表就更方便了,拷貝粘貼足以。

不過opera有個(gè)問題,他會(huì)把所有的字符串賦值給style,但是功能并沒有影響。

另外要注意的是:

cssText屬性,會(huì)重寫style的所有值。

ps:css已經(jīng)進(jìn)入css4時(shí)代了,mediaquery被納入規(guī)范。

關(guān)于css私有屬性的處理大家還有更好的思路,可以分享一下啦,萬分感激!哈哈。。。


學(xué)習(xí)教程快速掌握從入門到精通的電腦知識(shí)