vue-cli項目中使用css做了一個漸變色的橫條,在本地顯示正常,但打包後發現css文件中漸變屬性只剩下一行,其他全部丟失。
background:-webkit-gradient(linear, left top,right top, from(#000000), to(#ffffff));
background:-webkit-linear-gradient(left, #000000, #ffffff);
background:-moz-linear-gradient(left, #000000, #ffffff);
background:-o-linear-gradient(left, #000000, #ffffff);
background:-ms-linear-gradient(left, #000000, #ffffff);
background:linear-gradient(left, #000000, #ffffff); //打包後發現只剩這一行了,當然在瀏覽器中無法正常顯示
百度後發現解決方案,前後加註釋,使打包時能夠加上,修改如下
/*! autoprefixer: off */
background:-webkit-gradient(linear, left top,right top, from(#000000), to(#ffffff));
background:-webkit-linear-gradient(left, #000000, #ffffff);
background:-moz-linear-gradient(left, #000000, #ffffff);
background:-o-linear-gradient(left, #000000, #ffffff);
background:-ms-linear-gradient(left, #000000, #ffffff);
/* autoprefixer: on */
background:linear-gradient(left, #000000, #ffffff);
按理說應該好用,大家都解決了,但發現還是不好用,就很鬱悶,後來發現樣式用了css預處理器stylus,即lang='stylus'.
重新放到style裏面打包後能正常顯示了。
所以綜上除了加註釋外,還要留意是否用了預處理器(可能打包時樣式做了整合,就丟失了),這樣才能保證漸變樣式(其他應該也一樣)不丟失。