2013-01-14 250 views
2

我將重新構建網站,並將使用-prefix-free腳本來消除CSS中的前綴。不過,有些CSS我不會編輯。這個CSS確實包含一些前綴。如果我將這些前綴留在CSS中,那麼-prefix-free仍然可以正常工作,或者有理由讓我通過CSS文件並刪除所有前綴?CSS中的前綴無前綴腳本和前綴

換句話說:會在CSS break中添加前綴還是導致與-prefix-free腳本一起使用奇怪的功能?

回答

3

-prefix-free會在您的樣式表中留下任何已經在前綴中加入前綴的屬性。實際上,如果您爲其指定至少一個單獨的前綴,它將爲而不是添加其他前綴爲相同的屬性或規則。

舉例來說,如果你有

-webkit-border-radius: 10px; 

然後-prefix,自由意志超過4.0之前的Firefox版本中添加-moz-border-radius,也不會對任何瀏覽器中添加前綴的border-radius。 WebKit瀏覽器將像往常一樣應用邊界半徑,因爲他們理解-webkit-border-radius

如果你想添加前綴爲其他瀏覽器免費-prefix-,你將需要改變,要

border-radius: 10px; 

所以,這取決於你希望它適用所有必要的前綴的屬性。如果您希望-prefix-free在所需的任何地方應用前綴,您需要瀏覽樣式表並刪除已存在的任何前綴。

當然,請記住,您可能希望保留某些屬性的硬編碼前綴,例如WebKit特定的僞元素-webkit-appearance-webkit-text-size-adjust。同樣,這取決於財產;您可能需要根據您的佈局需求進行研究和決定。

該腳本的主頁包含一個test drive,您可以使用它來預覽帶前綴和前綴屬性的結果。請記住,結果是針對您用來運行測試驅動器的瀏覽器而定製的,因此如果您添加border-radius並在Firefox 4或更高版本中運行它,則不會看到任何更改。但是,如果您放置-webkit-border-radius聲明,您仍然會看到-prefix-free在預覽窗格中保持不變,即使添加了前綴無關的屬性,無論您使用的是哪種瀏覽器。

+0

這是我需要知道的信息,謝謝! – L84

0

-prefixes僅用於支持瀏覽器中存在的功能,但尚未標準化或尚未完成實施。

由於很多規範已經標準化,因此不再需要某些屬性的前綴,並且自許多版本以來一直存在。例如:border-radius

你可以看看here,看看哪些屬性仍然需要前綴。

使用CSS時不會產生任何影響,前綴爲某些元素,而前者爲其他元素的前綴。