国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 網頁設計 > 正文

Vendor Prefix:為什么需要瀏覽器引擎前綴

2024-08-30 08:36:07
字體:
來源:轉載
供稿:網友

瀏覽器引擎前綴(Vendor Prefix)是什么?

Vendor prefix—瀏覽器引擎前綴,是一些放在CSS屬性前的小字符串,用來確保這種屬性只在特定的瀏覽器渲染引擎下才能識別和生效。谷歌瀏覽器和Safari瀏覽器使用的是WebKit渲染引擎,火狐瀏覽器使用的是Gecko引擎,Internet Explorer使用的是Trident引擎,Opera以前使用Presto引擎,后改為WebKit引擎。一種瀏覽器引擎里一般不實現其它引擎前綴標識的CSS屬性,但由于以WebKit為引擎的移動瀏覽器相當流行,火狐等瀏覽器在其移動版里也實現了部分WebKit引擎前綴的CSS屬性。

瀏覽器引擎前綴(Vendor Prefix)有哪些?

-moz- /* 火狐等使用Mozilla瀏覽器引擎的瀏覽器 */
-webkit- /* Safari, 谷歌瀏覽器等使用Webkit引擎的瀏覽器 */
-o- /* Opera瀏覽器(早期) */
-ms- /* Internet Explorer (不一定) */

為什么需要瀏覽器引擎前綴(Vendor Prefix)?

這些瀏覽器引擎前綴(Vendor Prefix)主要是各種瀏覽器用來試驗或測試新出現的CSS3屬性特征。可以總結為以下3點:

  • 試驗一些還未成為標準的的CSS屬性——也許永遠不會成為標準
  • 對新出現的標準的CSS3屬性特征做實驗性的實現
  • 對CSS3中一些新屬性做等效語義的個性實現

這些前綴并非所有都是需要的,但通常你加上這些前綴不會有任何害處——只要記住一條,把不帶前綴的版本放到最后一行:

-moz-border-radius: 10px;
-webkit-border-radius: 10px;
-o-border-radius: 10px;
border-radius: 10px;

有些新的CSS3屬性已經試驗了很久,一些瀏覽器已經對這些屬性不再使用前綴。Border-radius屬性就是一個非常典型的例子。最新版的瀏覽器都支持不帶前綴的Border-radius屬性寫法。

需要使用Vendor Prefixes的CSS3屬性

主要的需要添加瀏覽器引擎前綴(vendor-prefix)的屬性包括:

 

  • @keyframes
  • 移動和變換屬性(transition-property, transition-duration, transition-timing-function, transition-delay)
  • 動畫屬性 (animation-name, animation-duration, animation-timing-function, animation-delay)
  • border-radius
  • box-shadow
  • backface-visibility
  • column屬性
  • flex屬性
  • perspective屬性

 完整的列表不只這些,而且還會增加。

瀏覽器引擎前綴(vendor-prefix)的用法

當需要使用瀏覽器引擎前綴(vendor-prefix)時,最好是把帶有各種前綴的寫法放在前面,然后把不帶前綴的標準的寫法放到最后。比如: 

 

/* 簡單屬性 */.myClass {	-webkit-animation-name: fadeIn;	-moz-animation-name: fadeIn;	-o-animation-name: fadeIn;	-ms-animation-name: fadeIn;	animation-name: fadeIn;  /* 不帶前綴的放到最后 */}/* 復雜屬性 keyframes */@-webkit-keyframes fadeIn {	0% { opacity: 0; } 100% { opacity: 0; }}@-moz-keyframes fadeIn {	0% { opacity: 0; } 100% { opacity: 0; }}@-o-keyframes fadeIn {	0% { opacity: 0; } 100% { opacity: 0; }}@-ms-keyframes fadeIn {	0% { opacity: 0; } 100% { opacity: 0; }}/* 不帶前綴的放到最后 */@keyframes fadeIn {	0% { opacity: 0; } 100% { opacity: 0; }}

 Internet Explorer

Internet Explorer 9 開始支持很多(但并不是全部)CSS3里的新屬性。比如,你也可以在IE里使用不帶瀏覽器引擎前綴(vendor-prefix)的border-radius屬性。

IE6到IE8都不支持CSS3,很遺憾的是,使用這些低版本瀏覽器的用戶還很多。所以,確保你的網站設計在不支持CSS3的情況下也能正常顯示。對于一些屬性:border-radius , linear-gradient, 和 box-shadow, 你可以使用CSS3Pie,它是一個很小的文件,把它放到你的網站的根目錄下,就能讓你的頁面中IE6,IE8中也支持這些屬性。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湖南省| 增城市| 鄂尔多斯市| 桃园县| 彭山县| 鄂托克旗| 资溪县| 呼玛县| 共和县| 敦化市| 新民市| 遂平县| 竹溪县| 曲阜市| 色达县| 茂名市| 鄂温| 金沙县| 乌拉特前旗| 宁夏| 米易县| 闸北区| 敦煌市| 聊城市| 汽车| 永吉县| 冕宁县| 桓仁| 芮城县| 灌南县| 桑植县| 东阳市| 鄢陵县| 宜城市| 临城县| 黄大仙区| 彭水| 龙门县| 江川县| 化隆| 奉新县|