CSS作用域(样式分割)的使用汇总


Posted in HTML / CSS onNovember 07, 2021

一、CSS作用域(样式分割)的使用

在vue中,让css样式只在当前组件中生效:scoped 属性是 HTML5 中的新属性,是一个布尔属性,如果使用该属性,则样式仅仅应用到 style 元素的父元素及其子元素。

CSS作用域(样式分割)的使用汇总

二、scoped的实现原理

vue中的scoped属性的效果主要通过PostCSS转译实现,如下是转译前的vue代码:

<style scoped>
    .test {
      color: blue;
    }
  </style>
  
  <template>
    <div class="test">Hi world</div>
  </template>

转译后:

<style>
    .test[data-v-5559930f] {
      color: blue;
    }
  </style>
  
  <template>
    <div class="test" data-v-5559930f>Hi world</div>
  </template>

PostCSS给一个组件中的所有DOM添加一个独一无二的动态属性,然后,给CSS选择器额外添加一个对应的属性选择器来选择该组件中的DOM,这种做法使得样式只作用于含有该属性的DOM<组件内部DOM>。

三、scoped穿透方法

在很多项目中,当引用第三方组件,需要再组件中局部修改第三方组件的样式,而又不想去除scoped属性造成组件之间的样式污染。这时就需要采用一些特殊的方式来进行穿透scoped。

方法一: 使用>>>可以穿透scoped属性,修改其他第三方组件样式。

CSS作用域(样式分割)的使用汇总

方法二: 使用两个style标签,一个带scoped属性,一个不带scoped属性,用来修改第三方组件的样式。

CSS作用域(样式分割)的使用汇总

方法三: 使用sass或less的样式穿透 /deep/

CSS作用域(样式分割)的使用汇总

方法四: 通过在最外层加 id或者 class的形式进行区分。

到此这篇关于CSS作用域(样式分割)的文章就介绍到这了,更多相关CSS作用域内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
CSS3实现简易版的刮刮乐效果
Sep 27 HTML / CSS
实现CSS3中的border-radius(边框圆角)示例代码
Jul 19 HTML / CSS
纯CSS3实现自定义Tooltip边框涂鸦风格的教程
Nov 05 HTML / CSS
纯css3制作的火影忍者写轮眼开眼至轮回眼及进化过程实例
Nov 11 HTML / CSS
详解CSS3 Media Queries中媒体属性的使用
Feb 29 HTML / CSS
css3实现文字扫光渐变动画效果的示例
Nov 07 HTML / CSS
基于Html5实现的react拖拽排序组件示例
Aug 13 HTML / CSS
Html5新标签解释及用法
Feb 17 HTML / CSS
HTML5 Canvas的事件处理介绍
Apr 24 HTML / CSS
整理HTML5中支持的URL编码与字符编码
Feb 23 HTML / CSS
用HTML5的canvas实现一个炫酷时钟效果
May 20 HTML / CSS
html5实现九宫格抽奖可固定抽中某项奖品
Jun 15 HTML / CSS
使用CSS实现小三角边框原理解析
CSS实现切角+边框+投影+内容背景色渐变效果
纯CSS如何禁止用户复制网页的内容
CSS实现单选折叠菜单功能
CSS 一行代码实现头像与国旗的融合
如何利用 CSS Overview 面板重构优化你的网站
基于HTML十秒做出淘宝页面
You might like
Apache服务器无法使用的解决方法
2013/05/08 PHP
PHP区块查询实现方法分析
2018/05/12 PHP
?牟┛途W扣了一??效果出?? target=
2007/05/27 Javascript
JS获取父节点方法
2009/08/20 Javascript
自己动手制作jquery插件之自动添加删除行功能介绍
2011/10/14 Javascript
Javascript实现关联数据(Linked Data)查询及注意细节
2013/02/22 Javascript
使用jquery自定义鼠标样式满足个性需求
2013/11/05 Javascript
js和css写一个可以自动隐藏的悬浮框
2014/03/05 Javascript
JS获取随机数函数可自定义最小值最大值
2014/05/08 Javascript
JS截取与分割字符串常用技巧总结
2015/11/10 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
2016/02/20 Javascript
js判断手机系统是android还是ios
2017/03/07 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
2017/10/26 Javascript
详解es6超好用的语法糖Decorator
2018/08/01 Javascript
Python中的choice()方法使用详解
2015/05/15 Python
python基础入门学习笔记(Python环境搭建)
2016/01/13 Python
Python实现查找匹配项作处理后再替换回去的方法
2017/06/10 Python
Python字典实现简单的三级菜单(实例讲解)
2017/07/31 Python
python网络爬虫学习笔记(1)
2018/04/09 Python
Python用for循环实现九九乘法表
2018/05/31 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
python文件转为exe文件的方法及用法详解
2019/07/08 Python
python读取大文件越来越慢的原因与解决
2019/08/08 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
2019/12/13 Python
Python文件操作基础流程解析
2020/03/19 Python
Python headers请求头如何实现快速添加
2020/11/03 Python
HTML5 新标签全部总汇(推荐)
2016/06/13 HTML / CSS
英国领先的露营和露营车品牌之一:OLPRO
2019/08/06 全球购物
Interrail法国:乘火车探索欧洲,最受欢迎的欧洲铁路通票
2019/08/27 全球购物
环境科学专业大学生自荐信格式
2013/09/21 职场文书
体育专业个人求职信范文
2013/12/27 职场文书
交通文明倡议书
2014/05/16 职场文书
民政局标准版离婚协议书
2014/12/01 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书
深入理解Pytorch微调torchvision模型
2021/11/11 Python