zoukankan      html  css  js  c++  java
  • Webpack打包之后[-webkit-box-orient: vertical]样式丢失

    背景:项目是用的vue全家桶套餐

    今天在工作中遇到一个问题,需求是要求文字只能显示3行,超过3行则隐藏且显示 '...', 于是我加了如下样式在标签里面:

    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-height: 20px;
    max-height: 60px;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;

    加好之后,测试ok没问题,感觉很完美,现在要提交代码了,为了代码规范,那么多样式写在行间里面感觉是不太好,于是想着把它抽出来写在<style>标签里面吧,在一切就绪准备push的时候,因为热更新 页面刷新了,???what, 为啥没有'...'了呢,第三行显示完了就没有了(一脸懵逼),去调试面板看了下,-webkit-box-orient: vertical; 这个样式不见了,这是什么情况。。。

    去google上找了一圈,果然不是我一个人遇到这个问题,是因为这个属性被 optimize-css-assets-webpack-plugin插件在编译时删除掉了,T_T

    解决办法如下:

    方法一:加上注释命令,让autoprefixer编译的时候关闭对这行代码的转换。

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

    方法二:从问题的源头出发,修改webpack.prod.conf.js文件。

    注释掉下面代码:

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

    这段代码本来实现了css的压缩,现在注释后就没有压缩了,所以还需要在配置文件中添加 minimize:true 

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

    参考文档 https://blog.csdn.net/chjj0904/article/details/83792583

  • 相关阅读:
    96. Unique Binary Search Trees1和2
    576. Out of Boundary Paths
    686. Repeated String Match判断字符串重复几次可以包含另外一个
    650. 2 Keys Keyboard
    Penetration Test
    Penetration Test
    Penetration Test
    Penetration Test
    CISSP 考试经验分享
    2019-2020 ICPC Asia Hong Kong Regional Contest J—Junior Mathematician 数位dp
  • 原文地址:https://www.cnblogs.com/qilj/p/10985952.html
Copyright © 2011-2022 走看看