vue中style设置scoped后部分样式不生效的解决
vue中style设置scoped后部分样式不生效
因为用了elementUI的组件库,一个页面用到了el-dialog,需要改一下样式,但<style>中设置了scoped后样式并不生效。
因为vue的scoped为本组件的所有标签都打上了一个唯一attribute,样式生效时也带上了这唯一的attribute,但是本组件应用的所有子组件,除根标签以为其他都未打上这唯一标签,因此样式自然不会生效。

vue 自动添加一个唯一的 attribute
添加了唯一的attribute,这也就是vue scoped 实现样式隔离的原理。
如果不怕影响别的页面的话把scoped删掉之后样式即可生效。
不删除scoped的解决办法
查了一下官方解决办法
vue官方给出的解决办法是: 深度作用选择器
<style scoped>
::v-deep .el-dialog {
background-color: #0c1d3f;
}
</style>还可以用/deep/、 >>>、::v-deep。
/deep/在vue 3.0会报错,可使用::v-deep
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
解决VUE项目使用Element-ui 下拉组件的验证失效问题
这篇文章主要介绍了解决VUE项目使用Element-ui 下拉组件的验证失效问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-11-11


最新评论