CSS作用域

作者: tcz520 | 来源:发表于2019-02-27 16:10 被阅读1次

刚接触Vue的文件,部分同学对style标签里面的scoped属性难免有些疑惑,毕竟之前可能没用到过,现在大家跟着我一起来进行研究,看看它到底是个什么‘鬼’。

标准的vue文件

转换结果:

当 <style> 标签有 scoped 属性时,它的 CSS 只作用于当前组件中的元素。这类似于 Shadow DOM 中的样式封装。它有一些注意事项,但不需要任何 polyfill

本地和全局样式

子组件的样式

使用 scoped 后,父组件的样式将不会渗透到子组件中。不过一个子组件的根节点会同时受其父组件有作用域的 CSS 和子组件有作用域的 CSS 的影响。这样设计是为了让父组件可以从布局的角度出发,调整其子组件根元素的样式。

深度使用选择器

你希望 scoped 样式中的一个选择器能够作用得“更深”,例如影响子组件,你可以使用 >>> 操作符:

上述代码将会编译成:

有些像 Sass 之类的预处理器无法正确解析 >>>。这种情况下你可以使用 /deep/ 操作符取而代之——这是一个 >>> 的别名,同样可以正常工作。

相关文章

  • Vue 中的 CSS

    有作用域的 CSS 当 标签有 scoped 属性时,它的 CSS 只作用于当前组件中的元素。 关于有作用域的...

  • 《vue》关于样式中“scoped”边界问题

    众所周知,Vue中样式的scoped,可以划分css模块,形成css作用域。 那么它的作用域边界是哪里呢? 先说结...

  • 2019-11-11-本周学习周报

    学习总览 JavaScript 函数作用域、块级作用域 变量提升、函数提升 CSS 新增属性transition ...

  • CSS作用域

    刚接触Vue的文件,部分同学对style标签里面的scoped属性难免有些疑惑,毕竟之前可能没用到过,现在大家跟着...

  • 春招cvte面经

    cvte面试总结 css三角形border-width 作用域链最外层是全局作用域,每个函数是一个局部作用域,嵌套...

  • 如何在laravel-mix中使用CSS Modules

    使用Vue开发SPA时,如果想在组件中用 CSS Modules 来替代 scoped 控制CSS作用域,只...

  • Vue 和 React 语法对比 & polyfill

    1. class 类名+布尔值 2. css 样式作用域 vue react + css-modules

  • Html/CSS 作用域

    作用域是什么:有效的范围 1.ES5 中作用域 在ES5中只有函数有作用域,其他没有作用域的概念。所以当在使用的时...

  • 微信小程序 + vant + westore + amap

    Shadow DOM 官方文档限定作用域css,在组件中隐藏DOM树。

  • 2017-3-22 less

    Extend伪类 样式的继承使用 LESS: CSS: 命名空间和作用域 指定命名空间LESS: CSS: 私有作...

网友评论

    本文标题:CSS作用域

    本文链接:https://www.haomeiwen.com/subject/echfuqtx.html