解决vue单页面修改样式无法覆盖问题


Posted in Javascript onAugust 05, 2019

当 <style> 标签有 scoped 属性时,它的 CSS 只作用于当前组件中的元素。

vue组件编译后,会将 template 中的每个元素加入 [data-v-xxxx] 属性来确保 style scoped 仅本组件的元素而不会污染全局。

比如:

<style scoped>
 .example {
 color: red;
 }
</style>

<template>
 <div class="example">hi</div>
</template>

转换结果:

<style>
 .example[data-v-f3f3eg9] {
 color: red;
}
</style>

<template>
 <div class="example" data-v-f3f3eg9>hi</div>
</template>

如果你想修改class="example"里面的span样式,你会发现是没有效果的

有两个解决办法

方法一

你可以在一个组件中同时使用有作用域和无作用域的样式:

<style scoped>
 .example{
  // ...
 }
</style>

<style>
 .example span {
  // ...
 }
</style>

方法二

深度作用选择器

如果你希望 scoped 样式中的一个选择器能够作用得“更深”,例如影响子组件,你可以使用 >>> 操作符:

只作用于css!!!!!!!!!!!!!!

<style scoped>
 .a >>> .b { /* ... */ }
</style>

上述代码将会编译成:

.a[data-v-f3f3eg9] .b { /* ... */ }

如果是sass/less的话可能无法识别,这时候需要使用 /deep/ 选择器了。

<style lang="less" scoped>
 /deep/ .b {
 color: #000;
 }
}
</style>

总结

以上所述是小编给大家介绍的解决vue单页面修改样式无法覆盖问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js获取height和width的方法说明
Jan 06 Javascript
IE的fireEvent方法概述及应用
Feb 22 Javascript
javascript中自定义对象的属性方法分享
Jul 12 Javascript
Javascript表单验证要注意的事项
Sep 29 Javascript
jQuery实现友好的轮播图片特效
Jan 12 Javascript
JSON字符串和对象之间的转换详解
May 26 Javascript
$.browser.msie 为空或不是对象问题的多种解决方法
Mar 19 Javascript
详解vue中使用express+fetch获取本地json文件
Oct 10 Javascript
bootstrap模态框关闭后清除模态框的数据方法
Aug 10 Javascript
小程序实现左右来回滚动字幕效果
Dec 28 Javascript
优化Vue项目编译文件大小的方法步骤
May 27 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
May 27 jQuery
微信小程序3种位置API的使用方法详解
Aug 05 #Javascript
微信小程序 高德地图路线规划实现过程详解
Aug 05 #Javascript
详解将微信小程序接口Promise化并使用async函数
Aug 05 #Javascript
使用apifm-wxapi模块中的问题及解决方法
Aug 05 #Javascript
使用apifm-wxapi快速开发小程序过程详解
Aug 05 #Javascript
浅谈Vue项目骨架屏注入实践
Aug 05 #Javascript
基于 vue-skeleton-webpack-plugin 的骨架屏实战
Aug 05 #Javascript
You might like
php上的memcache和memcached两个pecl库
2010/03/29 PHP
thinkPHP模型初始化实例分析
2015/12/03 PHP
Joomla实现组件中弹出一个模式(modal)窗口的方法
2016/05/04 PHP
在php的yii2框架中整合hbase库的方法
2018/09/20 PHP
小程序微信退款功能实现方法详解【基于thinkPHP】
2019/05/05 PHP
jQuery效果 slideToggle() 方法(在隐藏和显示之间切换)
2011/06/28 Javascript
autoPlay 基于jquery的图片自动播放效果
2011/12/07 Javascript
javascript倒计时功能实现代码
2012/06/07 Javascript
js AppendChild与insertBefore用法详细对比
2013/12/16 Javascript
js Object2String方便查看js对象内容
2014/11/24 Javascript
javascript格式化日期时间方法汇总
2015/06/19 Javascript
JavaScript ES5标准中新增的Array方法
2016/06/28 Javascript
利用jQuery实现滑动开关按钮效果(附demo源码下载)
2017/02/07 Javascript
Web开发中客户端的跳转与服务器端的跳转的区别
2017/03/05 Javascript
js排序与重组的实例讲解
2017/08/28 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
关于Webpack dev server热加载失败的解决方法
2018/02/22 Javascript
vue-cli 使用vue-bus来全局控制的实例讲解
2018/09/15 Javascript
vue单页面实现当前页面刷新或跳转时提示保存
2018/11/02 Javascript
js打开word文档预览操作示例【不是下载】
2019/05/23 Javascript
浅入深出Vue之自动化路由
2019/08/06 Javascript
JavaScript使用canvas绘制随机验证码
2020/02/17 Javascript
Vue如何基于vue-i18n实现多国语言兼容
2020/07/17 Javascript
js实现滚动条自动滚动
2020/12/13 Javascript
详解如何在python中读写和存储matlab的数据文件(*.mat)
2018/02/24 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
对pyqt5中QTabWidget的相关操作详解
2019/06/21 Python
python 字段拆分详解
2019/12/17 Python
Python Pillow.Image 图像保存和参数选择方式
2020/01/09 Python
python有序查找算法 二分法实例解析
2020/02/18 Python
python re模块和正则表达式
2021/03/24 Python
金融专业毕业生推荐信
2013/11/26 职场文书
一分钟演讲稿
2014/04/30 职场文书
退伍军人感言
2015/08/01 职场文书
我国拿下天问一号火星着陆区附近 22 个地理实体命名:平乐、西柏坡、古田、漠河等
2022/04/29 数码科技
python中pycryto实现数据加密
2022/04/29 Python