要做出正確的決定,您應該知道您必須支持哪些瀏覽器。 Yous也應該考慮Graceful degradation。
個人我認爲運行較少與autoprefix和clean-css在大多數情況下是安全的選擇。
測試很簡單:
npm install less
npm install less-plugin-clean-css
npm install less-plugin-autoprefix
lessc source.less production.css --autoprefix --clean-css
注意,你可以設置你的目標瀏覽器作爲autoprefix插件參數。爲了支持與Bootstrap相同的瀏覽器,請使用以下內容:
--autoprefix='Android 2.3','Android >= 4','Chrome >= 20','Firefox >= 24','iOS >= 6','Opera >= 12','Safari >= 6'
你說得對。供應商前綴會使您的CSS文件變大。你應該注意到你可以壓縮/縮小你的代碼(也是zip),你的代碼可以被瀏覽器緩存。
您應該將較大的代碼與-prefix-fee進行比較; 2kb gziped一個額外的http進程和一些JavaScript處理。維拉解釋了爲什麼使用它可能是一個好主意:http://css-tricks.com/five-questions-with-lea-verou/
你的想法是介於上述兩個解決方案之間的某處。你的css代碼可能會稍小一些,但你仍然需要一些JavaScript處理來找出用戶的瀏覽器。
我也可以使用一些ide插件在較少的文件中添加前綴,但是>使得css文件變得龐大且難以調試。
您可以將autoprefix插件與CSS源代碼一起使用,以方便調試(使用Less編譯器的--source-map選項)。在大多數情況下,您將擁有開發和生產版本的代碼。
正如@ seven-phases-max已經說明的那樣,您可以將所有上述內容集成到Grunt或Gulp的構建鏈中。
[Autoprefixer](https://github.com/postcss/autoprefixer)。 – 2015-02-11 16:14:44
你能告訴它它做了什麼,從我得到它需要最終的CSS和前綴與所有瀏覽器前綴對嗎? – 2015-02-11 18:05:44
好吧,它幾乎可以在任何shell格式下使用,包括['lessc' plugin](https://github.com/less/less-plugin-autoprefix)(所以你可以隨時隨地使用它,例如任何你需要的東西。如果'Grunt'是你的構建鏈的一部分,那麼使用它作爲[Grunt插件](https://github.com/nDmitry/grunt-autoprefixer)而不是所提及的'lessc'插件更加靈活。 – 2015-02-11 19:05:50