news 2026/5/6 19:00:00

样式穿透,以及解决样式穿透的办法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
样式穿透,以及解决样式穿透的办法

样式穿透

组件样式污染的核心原因,就是不加scoped的话,组件里的CSS选择器都是全局的,类名一重复就会互相覆盖。解决有两种办法,一是给组件最外层的顶级元素起唯一类名,靠人工保证不重复,不过一般不用;主流是给style加scoped,它的核心原理是编译时做两件事,一是给当前组件所有HTML元素,还有组件里引入的所有子组件(包括UI组件)的根标签(顶级元素),都自动加上唯一的data-v-xxx哈希属性,二是给当前组件的所有样式规则,也拼接这个哈希属性选择器,这样样式就只会匹配带相同哈希的元素,哈希几乎不会重复,就从根本上避免了样式污染。

也正因为scoped只给子组件的根标签加当前组件的哈希,子组件内部的非根元素,是它自己编译的,不会带当前组件的哈希,所以我们用带哈希的样式规则,根本匹配不到UI组件这类第三方组件的内部子元素,直接写样式就不生效。这时候就需要用样式穿透,Vue2.7及以后用:deep(),老版本的/deep/已经不兼容了,穿透的作用就是让编译器不对穿透后的选择器拼接哈希,这样样式就能直接匹配到UI组件内部的子元素,实现样式修改。

而且因为scoped会给子组件根标签加哈希,所以我们直接修改UI组件的根标签样式,不用穿透也能生效,这也是scoped的一个设计细节。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/6 3:52:24

DODAP,CAS号:127512-29-2,二油酰基-3-二甲基氨基丙烷

DODAP,CAS号:127512-29-2,二油酰基-3-二甲基氨基丙烷 DODAP(N,N-dioctadecyldimethylammonium Propane Sulfonate)是一种常见的阳离子表面活性剂,广泛应用于药物递送、基因传递、纳米技术以及生物医学领域…

作者头像 李华
网站建设 2026/4/22 22:50:35

计算机等级考试—E-R 图符号对照表—东方仙盟练气期

E-R 图符号对照表 图形符号名称含义你的图中例子▭(单矩形框)强实体可以独立存在,拥有唯一主键的实体代购员、配送员、商品、顾客、托运公司▭▭(双矩形框)弱实体必须依赖其他强实体才能存在,自身没有完整…

作者头像 李华
网站建设 2026/5/1 4:38:14

Spring Boot 如何防护 XSS + SQL 注入攻击 ?终于懂了!

01 XSS漏洞 ① XSS漏洞介绍 跨站脚本攻击XSS是指攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被解析执行,从而达到恶意攻击用户的目的。XSS攻击针对的是用户层面的攻击! ② XSS漏洞…

作者头像 李华
网站建设 2026/5/7 0:11:29

26年测试面试题(含答案!)

1.问:你在测试中发现了一bug ,但是开发经理认为这不是一bug你应该怎样解决。 1、将问题提交到缺陷管理库里面进行备案。 2、要获取判断的依据和标准: 根据需求说明书、产品说明、设计文档等,确认实际结果是否与计划有不一致的地方…

作者头像 李华
网站建设 2026/5/4 18:43:03

基于51单片机的自动调温系统

基于51单片机的自动调温系统设计 一、设计背景与意义 在工业生产、智能家居、仓储物流等领域,温度的精准控制直接影响产品质量、设备寿命与使用体验。传统调温系统多采用模拟控制方式,存在控制精度低、响应速度慢、参数调节不便等问题,难以满…

作者头像 李华
网站建设 2026/4/23 17:14:05

收藏!AI会取代程序员工作?Java开发者转型大模型必看指南

“AI会取代我的工作吗?” 这大概是当下每一位打工人,尤其是身处技术一线的程序员,深夜复盘工作、焦虑未来时,最常萦绕在心头的问题。 打开各类开发工具,AI能一键生成规范代码、秒级定位隐藏Bug,甚至能参与…

作者头像 李华