Vue 中 css scoped 样式穿透

scoped看起来很好用,当时在Vue项目中,当我们引入第三方组件库时(如使用element-ui),需要在局部组件中修改第三方组件库样式,而又不想去除scoped属性造成组件之间的样式覆盖。这时我们可以通过特殊的方式穿透scoped。

  • 1、stylus的样式穿透 使用 >>>
.wrapper >>> .swiper-pagination-bullet-active
    background: #fff复制代码
  • 2、sass和less的样式穿透 使用 /deep/
// 语法
外层 /deep/ 第三方组件 {
    样式
}

// eg
.wrapper /deep/ .swiper-pagination-bullet-active{
    background: #fff;
}

来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

原文地址:https://www.cnblogs.com/yaiza/p/12207246.html

时间: 2024-08-29 12:08:17

Vue 中 css scoped 样式穿透的相关文章

Vue中的scoped及穿透方法

何为scoped? 在vue文件中的style标签上,有一个特殊的属性:scoped.当一个style标签拥有scoped属性时,它的CSS样式就只能作用于当前的组件,也就是说,该样式只能适用于当前组件元素.通过该属性,可以使得组件之间的样式不互相污染.如果一个项目中的所有style标签全部加上了scoped,相当于实现了样式的模块化. scoped的实现原理 vue中的scoped属性的效果主要通过PostCSS转译实现,如下是转译前的vue代码: <style scoped> .examp

VUE中CSS去除Input的边框样式和阴影

先来看下之前的样式(左边和上边都是有阴影的) 在style标签中加上下面一段代码看效果~~ <style scoped> input { outline-color: invert; outline-style: none; outline-width: 0px; border: none; border-style: none; text-shadow: none; -webkit-appearance: none; -webkit-user-select: text; outline-co

vue中修改swiper样式

问题 vue单文件组件中无法修改swiper样式. 解决 1,单文件组件中:新增一个style 不加scoped 让它最终成为全局样式.只在其中操作swiper的样式. <style lang="scss"> .swiper-container{ .swiper-pagination{ .swiper-pagination-bullet{ width: 14px; height: 14px; } } } </style>// 项目中多次使用swiper 的话 就

vue中css动画原理

显示原理: <transition name='fade'> <div v-if='show'>hello world</div> </transition> 当一个元素被transition包裹了之后,vue会自动当分析元素的css样式,然后构建一个动画的流程,在动画即将被执行的一瞬间,vue会在内部标签上增加两个class名字,分别是fade-enter,fade-enter-active,在动画执行到第二帧的时候,也就是动画开始后,fade-enter

vue中内联样式

一. 使用内联样式 1. 直接在元素上通过 `:style` 的形式,书写样式对象 <h1 :style="{color: 'red', 'font-size': '40px'}">这是一个善良的H1</h1> 2. 将样式对象,定义到 `data` 中,并直接引用到 `:style` 中 (1) 在data上定义样式: data: { h1StyleObj: { color: 'red', 'font-size': '40px', 'font-weight':

vue中如何实现数据的双向绑定

vue中如何实现数据的双向绑定 实现视图变化数据跟着变:分两步,上面get中的为第二步(即再次读取的时候会调用get方法得到之前设置的值,以此来实现动态改变) 由于直接写obj.name = this.value;会导致循环调用set方法,所以要借助中间对象的形式把值赋给中间对象,获取obj.name的时候我们获取中间对象的最新值即可 let obj = {name:'zhufeng',age:9};//数据 let temp = {name:"lily"};//借助中间对象 let

Vue 中的动画特效

Vue 中的动画特效 CSS 实现标签显隐 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-U

第 15 章 CSS 文本样式[上]

学习要点: 1.字体总汇 2.字体设置 3.Web 字体 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS 文本样式,通过文本样式的设置,更改字体的大小.样式以及文本的方位. 一.字体总汇 本节课,我们重点了解一下 CSS 文本样式中字体的一些设置方法,样式表如下: 属性名 说明 CSS 版本 font-size 设置字体的大小 1 font-variant 设置英文字体是否转换为小型大写 1 font-style 设置字体是否倾斜 1 font-weight 设置字体是否加粗 1 fon

第 15 章 CSS 文本样式[下]

学习要点: 1.文本总汇 2.文本样式 3.文本控制 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS 文本样式,通过文本样式的设置,更改字体的大小.样式以及文本的方位. 一.文本总汇 本节课,我们重点了解一下 CSS 文本样式中文本内容的一些设置方法,样式表如下: 属性名 说明 CSS 版本 text-decoration 装饰文本出现各种划线. 1 text-transform 将英文文本转换大小写. 1 text-shadow 给文本添加阴影 3 text-align 设置文本对齐方