解决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 相关文章推荐
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
Aug 28 Javascript
原生javascript获取元素样式
Dec 31 Javascript
js判断一个字符串是否包含一个子串的方法
Jan 26 Javascript
jQuery取消ajax请求的方法
Jun 09 Javascript
JavaScript中Date.toSource()方法的使用教程
Jun 12 Javascript
javascript实现的简单的表单验证
Jul 10 Javascript
jQuery实现模仿微博下拉滚动条加载数据效果
Dec 25 Javascript
解决vue-cli + webpack 新建项目出错的问题
Mar 20 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
Jan 09 Javascript
微信小程序调用微信支付接口的实现方法
Apr 29 Javascript
Fetch超时设置与终止请求详解
May 18 Javascript
ckeditor一键排版功能实现方法分析
Feb 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
如何将一个表单同时提交到两个地方处理
2006/10/09 PHP
模仿OSO的论坛(三)
2006/10/09 PHP
php设计模式之命令模式使用示例
2014/03/02 PHP
PHP技术开发微信公众平台
2015/07/22 PHP
PHP代码加密的方法总结
2020/03/13 PHP
msn上的tab功能Firefox对childNodes处理的一个BUG
2008/01/21 Javascript
node.js中的path.isAbsolute方法使用说明
2014/12/08 Javascript
JavaScript中通过prototype属性共享属性和方法的技巧实例
2015/03/13 Javascript
JavaScript每天定时更换皮肤样式的方法
2015/07/01 Javascript
jquery ajax 如何向jsp提交表单数据
2015/08/23 Javascript
JS实现横向拉伸动感伸缩菜单效果代码
2015/09/04 Javascript
jQuery实现TAB选项卡切换特效简单演示
2016/03/04 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
基于jQuery和hwSlider实现内容左右滑动切换效果附源码下载(一)
2016/06/22 Javascript
微信小程序顶部可滚动导航效果
2017/10/31 Javascript
JavaScript原生实现观察者模式的示例
2017/12/15 Javascript
详解Vue中watch的详细用法
2018/11/28 Javascript
react中Suspense的使用详解
2019/09/01 Javascript
使用优化器来提升Python程序的执行效率的教程
2015/04/02 Python
Python中使用urllib2模块编写爬虫的简单上手示例
2016/01/20 Python
关于python2 csv写入空白行的问题
2018/06/22 Python
python实现AES加密解密
2019/03/28 Python
对Django 转发和重定向的实例详解
2019/08/06 Python
Python Django中的STATIC_URL 设置和使用方式
2020/03/27 Python
pandas.DataFrame.drop_duplicates 用法介绍
2020/07/06 Python
新英格兰最大的特色礼品连锁店:The Paper Store
2018/07/23 全球购物
Spartoo美国:欧洲排名第一的在线时装零售商
2019/12/12 全球购物
文员的职业生涯规划发展方向
2014/02/08 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
临床护理求职信
2014/04/26 职场文书
优秀三好学生事迹材料
2014/08/31 职场文书
护士工作失误检讨书
2014/09/14 职场文书
依法行政工作汇报材料
2014/10/28 职场文书
2015年餐厅服务员工作总结
2015/04/23 职场文书
深度好文:50条没人告诉你的人生经验,句句精辟
2019/08/22 职场文书
《游戏王:大师决斗》将推出新卡牌包4月4日上线
2022/03/31 其他游戏