当 <style>
标签有 scoped
属性时,它的 CSS 只作用于当前组件中的元素。使用 scoped
后,父组件的样式将不会渗透到子组件中。
你可以在一个组件中同时使用有作用域和无作用域的样式:
<style>
/* 全局样式 */
</style>
<style scoped>
/* 本地样式 */
</style>
通过设置scoped
属性,可以使得组件之间的样式不互相污染。
当我们需要修改引入的第三方组件或者其他子组件时,可以使用 >>>
操作符
<style scoped>
.a >>> .b { /* ... */ }
</style>
上述代码将会编译成:
.a[data-v-f3f3eg9] .b { /* ... */ }
有些像 Sass 之类的预处理器无法正确解析 >>>
。这种情况下你可以使用 /deep/
操作符取而代之——这是一个 >>>
的别名,同样可以正常工作。