当前位置: 首页 > news >正文

CSS样式穿透

        当我们在vue项目中使用第三方组件时,有时候需要去修改某些元素的样式,但有时写的css样式不会覆盖组件的样式,所以要用到样式穿透。

        常用的方法有这几种:(1)>>>  (2)/deep/  (3)::v-deep  (4):deep()

        但由于不同的样式解析器识别的语法不同,有时也不一定会生效。

        用vant组件库的navbar组件举个例子。

        ​​​​​​地址:Vant 4 - A lightweight, customizable Vue UI library for mobile web apps.

vue2

使用vant组件库的版本:

修改导航栏标题的颜色,先找到标题对应的class:

<template><div class="world"><van-nav-bar title="标题" left-text="返回" left-arrow/></div>
</template><script>
export default {}
</script><style scoped>
/*.world >>> .van-nav-bar__title {*/
/*    color: red;*/
/*}*//*::v-deep .van-nav-bar__title{*/
/*    color: red;*/
/*}*//*/deep/ .van-nav-bar__title{*/
/*    color: red;*/
/*}*/:deep(.van-nav-bar__title){color: red;
}
</style>

结果:

        (1)当使用 css 时,这四种方法都可以生效。

        (2)当使用 less 时,>>> 失效,其余三种方法都生效。

        (3)当使用 sass 时,>>> 和 /deep/ 失效,其余两种方法生效。

vue3

使用vant组件库版本:

结果:

        (1)当使用 css 时,>>> 失效,其余三种方法都生效。

        (2)当使用 less 时,>>> 失效,其余三种方法都生效。

        (3)当使用 sass 时,>>> 和 /deep/ 失效,其余两种方法生效。

        虽然有些方法可以使用,但会在终端出现警告,比方说,当在使用 vue3 并且使用 less 的情况下,用 ::v-deep 和 /deep/ 生效,出现警告让使用 :deep() 。

相关文章:

  • 人脸106和240点位检测解决方案
  • 力扣labuladong一刷day11拿下打家劫舍问题共3题
  • 【AI视野·今日Robot 机器人论文速览 第六十五期】Mon, 30 Oct 2023
  • 除了chatGPT网站外,国内有些可以使用的AI网站 文心一言 讯飞星火 豆包 通义千问 人工智能网站 AI网站
  • 爱上C语言:操作符详解(下)
  • 软路由R4S+iStoreOS实现公网远程桌面局域网内电脑
  • Python中神奇的「type」,即可查看类型,又可以创建对象
  • Postman:API测试之Postman使用完全指南
  • [Python学习笔记]Requests性能优化之Session
  • spark性能调优 | 内存优化
  • 科学上网导致Adobe软件运行弹出This non-genuine Adobe app will be disabled soon,尝试解决办法
  • bug:Junit5报错,@SpringBootTest没有运行
  • C#语言的由来与发展历程
  • uart控制led与beep
  • QT绘图设备
  • 分享一款快速APP功能测试工具
  • CentOS7 安装JDK
  • co.js - 让异步代码同步化
  • Java精华积累:初学者都应该搞懂的问题
  • JSDuck 与 AngularJS 融合技巧
  • JS变量作用域
  • js如何打印object对象
  • MobX
  • php面试题 汇集2
  • Three.js 再探 - 写一个跳一跳极简版游戏
  • XForms - 更强大的Form
  • Zsh 开发指南(第十四篇 文件读写)
  • 爱情 北京女病人
  • 复杂数据处理
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 让你的分享飞起来——极光推出社会化分享组件
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 我感觉这是史上最牛的防sql注入方法类
  • 译米田引理
  • 用mpvue开发微信小程序
  • 在Unity中实现一个简单的消息管理器
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • python最赚钱的4个方向,你最心动的是哪个?
  • 阿里云服务器如何修改远程端口?
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • # include “ “ 和 # include < >两者的区别
  • (zhuan) 一些RL的文献(及笔记)
  • (办公)springboot配置aop处理请求.
  • (附源码)计算机毕业设计SSM教师教学质量评价系统
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (强烈推荐)移动端音视频从零到上手(下)
  • (转)EXC_BREAKPOINT僵尸错误
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • (转)视频码率,帧率和分辨率的联系与区别
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .NET Core 实现 Redis 批量查询指定格式的Key
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • .net/c# memcached 获取所有缓存键(keys)