antd-vue在vue中样式无法修改


方法一:

  直接取消scoped

  • scoped的作用是防止样式冲突,当前页面/组件写的类名与对应的样式只会作用在当前的页面/组件
  • 取消了scoped以后,页面的样式将会作用到全局。
  • 这样会带来的问题是,如果当前组件/页面的类名和其他页面的类名冲突的话会导致页面间样式冲突。最容易出现的问题就是:
    • 当打开某个页面,样式正常,但是跳转到某个固定页面后再回到这个页面时,页面的样式很可能被那个特定的页面覆盖。
    • 这样出现的BUG如果不熟悉代码的人,很难复现该BUG,也就难以修复

方法二:

  在当前页面/组件重新写一个style标签,专门用来写改写UI库中的样式。这样也会出现方法一中的问题。但是想要样式不冲突。可以使用如下的方法:

  • 使用scss/less等预编译方法,通过父子标签间的关系写样式,这样编译后的css样式将会按照父子标签间的层级关系展示,父标签命名得当完全可以避免组件/页面间样式冲突的问题

方法三:

  直接在scoped内写样式,根据父子标签的关系使用深度选择器:

如在less预编译语言中:

.father{
    /deep/ .child{
        color:red;
    }
}

在scss预编译中:

.father {
    >>> .son{
        color:red;
    }
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM