class和style样式绑定

class和style样式绑定

绑定样式:

​ 1.class样式

​ 写法::class=’xxx’,xxx可以是对象、数组、字符串

​ 字符串写法适用于:类名不确定,需要动态获取

​ 数组写法使用与:要绑定多个样式,个数不确定,名字也不确定

​ 对象写法:要绑定的样式名字、个数都确定,不确定应不应用

​ 2.style样式

​ :style=”xxx”,xxx可以是样式对象、样式对象数组

​ 备注:

​ 1.样式对象: key 不能瞎写,一定是==存在的属性==

​ 2.属性中如果是两个单词,直接拼在一起 font-size -> fontSize

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
 <!-- 准备好一个容器-->
<div id="root">
<!-- 绑定class样式--字符串写法 适用于:样式的类名不确定,需要动态制定 -->
<div class="basic " :class="a" @click="change()">{{name}}</div>
<!-- 绑定class样式—--数组写法,适用于:要绑定的样式个数不确定,名字也不确定 -->
<div class="basic " :class="classArr">{{name}}</div>
<!-- 绑定class样式——— 对象写法:适用于:要绑定的样式个数确定,名字确定,是否应用不确定-->
<div class="basic " :class="classObj">{{name}}</div>
<!-- 绑定style样式----对象写法 -->
<div class="basic " :style="styleObj">{{name}}</div>
<!-- 绑定style样式----数组写法 -->
<div class="basic " :style="styleArray">{{name}}</div>

</div>

<script>
Vue.config.productionTip=false //阻止vue在启动时生成生产提示
new Vue({
el:'#root',
data:{
a:'',
name:'helloworld',
classArr:['atguigu1','atguigu2','atguigu3'],
classObj:{
atguigu1:false,
atguigu2:false
},
styleObj:{
color:'red',
fontSize: '20px'
},
styleOb2:{
backgroundcolor:'orange'
},
styleArray:[{
color:'red',
fontSize: '20px'
},

,{
backgroundcolor:'orange'
}
],

},

methods:{
change(){
//0-1,1娶不到 0,0.11,1.xxx,.2.xxx向下取证
var index= Math.floor(Math.random()*3)
var arr=['happy','sad','normal']
this.a=arr[index]
}
}
})
</script>