1、vue单文件组件作用域
当<style>标签带有scoped
attribute 的时候,它的 CSS 只会影响当前组件的元素,和 Shadow DOM 中的样式封装类似。使用时有一些注意事项,不过好处是不需要任何的 polyfill。它的实现方式是通过 PostCSS 将以下内容:
<style scoped> .example { color: red; } </style> <template> <div class="example">hi</div> </template>
<style> .example[data-v-f3f3eg9] { color: red; } </style> <template> <div class="example" data-v-f3f3eg9>hi</div> </template>
2、深度选择器
使用scoped
样式中的选择器如果想要做更“深度”的选择,也就是说需要在父元素中 影响到子组件的样式,可以使用 :deep()
这个伪类、>>>
,/deep/
,::v-deep
(1):deep
<style scoped> .a :deep(.b) { /* ... */ } </style>
(2)>>>,less、sass预处理器无法解析>>>
<style scoped> .a >>> .b{ /* */ } </style>
(3)/deep/,在less预处理器中使用
<style lang='less' scoped> /deep/ .b{ /**/ color:red } </style>
(4)::v-deep,在sass预处理器中使用
<style lang='scss' scoped> ::v-deep .b{ /**/ color:red } </style>
标签:vue,样式,deep,穿透,color,处理器,red From: https://www.cnblogs.com/Miao--miao/p/16619055.html