当前阅读教程:Vue.JS入门教程 > class属性 绑定一个数组 | |
阅读(22555525) 收藏 赞(5685) 分享 | |
上一篇: class属性 绑定返回对象的计算属性 | 下一篇: class属性 通过三目运算符绑定 |
我们可以把一个数组传给 v-bind:class 。 语法格式 v-bind:class="[数组元素1]" v-bind:class="[数组元素1, 数组元素2, 数组元素n]" 示例:基础用法下面实例中我们定义了两个样式,mycss1定义了绿色区块,mycss2定义了红色区块;然后我们将样式复制给变量var_css1:"mycss1" 和 var_css2:"mycss2";最后通过v-bind:class绑定样式到要显示的元素v-bind:class="[var_css1]"和v-bind:class="[var_css1,var_css2]"。 代码<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Vue.js样式-class属性绑定一个数组</title> <!--加载本地vue.js的框架--> <script src="vue2.2.2.min.js"></script> <!--下面是内部样式--> <style> /*自定义一个绿色区块的样式:宽100px高50px,绿色背景*/ .mycss1 { width: 150px; /*宽度*/ height: 50px; /*高度*/ background-color: green;/*绿色背景*/ } /*自定义一个红色区块的样式:宽250px高50px,红色背景*/ .mycss2 { width: 250px; /*宽度*/ height: 50px; /*高度*/ background-color: red;/*红色背景*/ } </style> </head> <body> <!--定义div区块的id的值,这里定义的值为"app",后面vue会使用该值--> <div id="app"> <!--属性var_css1的值为mycss1,相当于下面区块调用mycss1的样式--> <div v-bind:class="[var_css1]">绿色背景区块</div><hr> <!--属性var_css2代表的样式会覆盖var_css1代表的样式:宽度变为250px,颜色变更为红色--> <div v-bind:class="[var_css1,var_css2]">红色背景区块</div> </div> <script> //Vue语句-开始 new Vue({ el: '#app',//app为前面div区块的id的值,通过"#"号绑定 data: { var_css1:"mycss1", //初始化属性 var_css2:"mycss2" //初始化属性 } })//Vue语句-结束 </script> </body> </html> 效果图示例2:变通用法下面实例中我们定义了两个样式,mycss1定义了绿色区块,mycss2定义了红色区块;我们不通过中间变量,可以直接将数组样式通过v-bind:class绑定到元素,可以有如下几种方式: v-bind:class="['mycss1']" <!—样式名有单引号--> v-bind:class="'mycss1 mycss2'" <!—样式名有单引号,多个中间用空格--> v-bind:class="['mycss1','mycss2']" <!—样式名有单引号,多个中间用逗号分隔--> 代码<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Vue.js样式-class属性绑定一个数组:变通用法</title> <!--加载本地vue.js的框架--> <script src="vue2.2.2.min.js"></script> <!--下面是内部样式--> <style> /*自定义一个绿色区块的样式:宽100px高50px,绿色背景*/ .mycss1 { width: 150px; /*宽度*/ height: 50px; /*高度*/ background-color: green;/*绿色背景*/ } /*自定义一个红色区块的样式:宽250px高50px,红色背景*/ .mycss2 { width: 250px; /*宽度*/ height: 50px; /*高度*/ background-color: red;/*红色背景*/ } </style> </head> <body> <!--定义div区块的id的值,这里定义的值为"app",后面vue会使用该值--> <div id="app"> <!--属性var_css2代表的样式会覆盖var_css1代表的样式:宽度变为250px,颜色变更为红色--> <div v-bind:class="[var_css1,var_css2]">红色背景区块,用法0</div><hr> <!--直接将原来属性var_css1位置使用值来代替,注意:这里是值mycss1是字符串要有单引号--> <div v-bind:class="['mycss1']">变通用法1</div><br> <!--下面两种用法的效果和用法0一样--> <div v-bind:class="'mycss1 mycss2'">变通用法2</div><br> <div v-bind:class="['mycss1','mycss2']">变通用法3</div> </div> <script> //Vue语句-开始 new Vue({ el: '#app',//app为前面div区块的id的值,通过"#"号绑定 data: { var_css1:"mycss1", //初始化属性 var_css2:"mycss2" //初始化属性 } })//Vue语句-结束 </script> </body> </html> 效果图 |
|
上一篇: class属性 绑定返回对象的计算属性 | 下一篇: class属性 通过三目运算符绑定 |