码迷,mamicode.com
首页 > Web开发 > 详细

解决-webkit-box-orient: vertical在webpack打包后丢失问题

时间:2020-09-23 23:39:02      阅读:40      评论:0      收藏:0      [点我收藏+]

标签:inline   key   项目   框架   丢失   方案   over   lan   dde   

问题描述

在项目中需要使用多行文本溢出显示省略号(…)的时候,首先想到的css如下:

overflow : hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;

该方式比较合适WebKit浏览器或移动端(绝大部分是WebKit内核的)浏览器。但是在现在一些框架中如(vue,react项目中使用),会发现本地正常,打包线上后,该属性丢失。因为webpack打包时把这个样式过滤掉了。

 

解决方案

1. 加上这注释命令

/*! autoprefixer: off */
    -webkit-box-orient: vertical;
 /* autoprefixer: on */

广州vi设计http://www.maiqicn.com 办公资源网站大全https://www.wode007.com

2. optimize-css-assets-webpack-plugin 从这个插件的问题源头解决

注释掉webpack.prod.conf.js中下面的代码

new OptimizeCSSPlugin({
  cssProcessorOptions: config.build.productionSourceMap? { safe: true, map: { inline: false } }: { safe: true }
}),

这段代码实现了css的压缩 注释后css就没有压缩,所以 还要在utils.js中添加,  minimize:true 

const cssLoader = {
   loader: ‘css-loader‘,
   options: {
     sourceMap: options.sourceMap,
     minimize:true
   }
 }
 

3. 方式三

在 webpack.config.js 文件中,找到 new webpack.optimize.UglifyJsPlugin,在里面添加一条 mangle:false,这个的意思是删除注释。这样打包时就注释和这行代码就不会连在一起了

解决-webkit-box-orient: vertical在webpack打包后丢失问题

标签:inline   key   项目   框架   丢失   方案   over   lan   dde   

原文地址:https://www.cnblogs.com/cmqj/p/13704543.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!