在css3中,前綴用於兼容不同瀏覽器的屬性支持,瀏覽器廠商會在屬性前加一個私有前綴來支持新屬性,以webkit為內核的瀏覽器會在屬性前添加“ -webkit-”前綴,語法為“-webkit-屬性:屬性值;”,不同核心的瀏覽器加上不同的前綴。
本教學操作環境:windows10系統、CSS3&&HTML5版、Dell G3電腦。
css中因為要兼容不同瀏覽器的屬性支持,瀏覽器廠商會在屬性前加一個私有前綴來支持新屬性;前綴為“- webkit-”的屬性,能夠在以webkit為核心的瀏覽器中正常使用,例如“safari”和“chrome”瀏覽器。
1、-moz-代表firefox瀏覽器私有屬性
2、-ms-代表ie瀏覽器私有屬性
3、-webkit-代表safari、chrome私有屬性
4、-o-代表Opera
這些是為了相容舊版的寫法,比較新版本的瀏覽器都支援直接寫:border-radius。
Internet Explorer 9 支援 border-radius 和 box-shadow 屬性。
Firefox、Chrome 以及 Safari 支援所有新的邊框屬性。
對於 border-image:Safari 5 以及更老的版本需要前綴 -webkit-。
Opera 支援 border-radius 和 box-shadow 屬性,但是對於 border-image 需要前綴 -o-。
範例如下:
<html> <head> <style> div { width:300px; height:100px; background-color:#ff9900; -moz-box-shadow: 10px 10px 5px #888888; /* 老的 Firefox */ box-shadow: 10px 10px 5px #888888; } </style> </head> <body> <div></div> </body> </html>
為什麼要有私有前綴呢?因為制定HTML和CSS標準的組織W3C動作是很慢的。通常,有w3c組織成員提出一個新屬性,比如說圓角border-radius,大家都覺得好,但是w3c不會為這個屬性制定標準,而是要走很複雜的程序,經過很多審查。
而瀏覽器商不願意等那麼久,他們覺得一個屬性已經夠成熟了,就會在瀏覽器中加入支援。但避免日後w3c公佈標準時有所變更,就會加入一個私有前綴,例如-webkit-border-radius,透過這種方式來提前支援新屬性,等到日後w3c公佈了標準,border-radius的標準寫法確立之後,再讓新版的瀏覽器支援border-radius這種寫法。
比方說,Chrome 10是不認border-radius這種寫法的,只能用webkit-border-radius,而Chrome12就能認了。於是寫CSS的時候,這樣寫就能確保Chrome10和Chrome12瀏覽網頁的時候都能夠正確顯示。
目前已有很多私有前綴可以不寫了,但為了相容於舊版的瀏覽器,可以仍沿用私有前綴和標準方法,逐漸過渡
(學習影片分享:css影片教學)
以上是css3的前綴用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!