解决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 相关文章推荐
javascript获取和判断浏览器窗口、屏幕、网页的高度、宽度等
May 08 Javascript
JavaScript中reduce()方法的使用详解
Jun 09 Javascript
angularjs学习笔记之双向数据绑定
Sep 26 Javascript
JavaScript制作淘宝星级评分效果的思路
Jun 23 Javascript
JavaScript实现广告弹窗效果
Aug 09 Javascript
bootstrap如何让dropdown menu按钮式下拉框长度一致
Apr 10 Javascript
从零开始最小实现react服务器渲染详解
Jan 26 Javascript
JS中用EL表达式获取上下文参数值的方法
Mar 28 Javascript
详解在vue-test-utils中mock全局对象
Nov 07 Javascript
layer父页获取弹出层输入框里面的值方法
Sep 02 Javascript
JavaScript Blob对象原理及用法详解
Oct 14 Javascript
JS中多层次排序算法的实现代码
Jan 06 Javascript
微信小程序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
人族 Terran 基本策略
2020/03/14 星际争霸
php基于curl主动推送最新内容给百度收录的方法
2016/10/14 PHP
PHP与SQL语句常用大全
2016/12/10 PHP
php 判断IP为有效IP地址的方法
2018/01/28 PHP
Laravel框架中集成MongoDB和使用详解
2019/10/17 PHP
符合W3C网页标准的iframe标签的使用方法
2007/07/19 Javascript
基于JQuery的密码强度验证代码
2010/03/01 Javascript
用js来定义浏览器中一个左右浮动元素相对于页面主体宽度的位置的函数
2012/01/21 Javascript
用jquery修复在iframe下的页面锚点失效问题
2014/08/22 Javascript
javascript制作幻灯片(360度全景图片)
2015/07/28 Javascript
javascript如何定义对象数组
2016/06/07 Javascript
酷! 不同风格页面布局幻灯片特效js实现
2021/02/19 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
Javascript中字符串和数字的操作方法整理
2017/01/22 Javascript
Vue项目中设置背景图片方法
2018/02/21 Javascript
javaScript实现游戏倒计时功能
2018/11/17 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
15 分钟掌握vue-next响应式原理
2019/10/13 Javascript
纯 JS 实现放大缩小拖拽功能(完整代码)
2019/11/25 Javascript
js实现纯前端压缩图片
2020/11/16 Javascript
浅谈flask源码之请求过程
2018/07/26 Python
Python 获取项目根路径的代码
2019/09/27 Python
python多线程实现同时执行两个while循环的操作
2020/05/02 Python
pycharm进入时每次都是insert模式的解决方式
2021/02/05 Python
canvas需要在标签里直接定义宽高
2014/12/17 HTML / CSS
canvas进阶之如何画出平滑的曲线
2018/10/15 HTML / CSS
校园自助餐厅的创业计划书
2013/12/26 职场文书
打架检讨书100字
2014/01/08 职场文书
教师师德反思材料
2014/02/15 职场文书
元旦晚会策划方案
2014/02/18 职场文书
运动会宣传口号
2014/06/09 职场文书
个人债务授权委托书范本
2014/10/05 职场文书
服务员态度差检讨书
2014/10/28 职场文书
专业见习报告范文
2014/11/03 职场文书
英文投诉信格式
2015/07/03 职场文书
html form表单基础入门案例讲解
2021/07/15 HTML / CSS