css样式中deep的含义以及⽤法
⾸先 /deep/ 深度选择的意思
⼀、先来聊聊scope
这个⼤家应该都不陌⽣,使⽤场景为在vue中,我们为了避免⽗组件的样式影响到⼦组件的样式,会在style中加<style scoped>,这样⽗组件中如果有跟⼦组件相同的class名称或者使⽤选择器的时候,就不会影响到⼦组件的样式。
⽗组件
<template>
<div>
<h1 class="title">{{ name }}</h1>
<input type="text" v-model="name">
<child />
</div>
</template>
<script>
import child from'./child';
export default{
data(){
return{
name:''
}
},
components:{
child
}
}
</script>
<style scoped>
.title{
background-color:"#f0f0f0",
监理实习日志color:'#333';
}
板报花边
</style>
⼦组件山东招考院
<template>
<div>
<h1 class="title">child</h1>
</div>
</template>
<script>
谭晶歌曲export default{
}
</script>
<style scoped>
电商发展.title{
color:'#999';
}悲哀的反义词
广东交警网违章查询</style>
主要就是我们加了scoped之后,样式会⾃动添加⼀个hash值
.title[data-v-221e4c4a]{
color: ‘#333’;
}
⼆、/deep/
使⽤了外届的组件或者⾃⼰开发⼀个组件,修改⼀处就可能会影响到⽤这个组件的所有样式,所以就需要有⼀个⽅法或者⽅式,既不影响到别的地⽅,⼜能修改⼦组件在当前的样式。/deep/就能实现
⽐如给组件加:
中国<style scoped>
/deep/.title{
color: ‘#999’;
}
</style>
这样就不会影响项⽬⾥使⽤这个公共组件的其他地⽅的样式