vuejs—绑定class和style样式
2016-01-30 本文已影响6848人
webCoder
上篇文章 介绍了通过vuejs计算属性,这篇中我们将一起学习vue.js实现绑定class和style样式。
- 绑定Html Class
我们可以传给 v-bind:class 一个对象,以动态地切换 class。注意 v-bind:class 指令可以与普通的 class 特性共存:
<div class="static" v-bind:class="{ 'class-a': isA, 'class-b': isB }"></div>
data: { isA: true, isB: false}
渲染结果:
<div class="static class-a"></div>
你也可以直接绑定数据里的一个对象,结果与上面的一致:
<div v-bind:class="classObject"></div>
data: {
classObject: {
'class-a': true,
'class-b': false
}
}
- 绑定内联样式
- v-bind:style的对象语法十分直观——看着非常像 CSS,其实它是一个 JavaScript 对象。CSS 属性名可以用驼峰式(camelCase)或短横分隔命名(kebab-case):
<div v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }"></div>
data: {
activeColor: 'red',
fontSize: 30
}
- 直接绑定到对象上(让模板更清晰)
<div v-bind:style="styleObject"></div>
data: {
styleObject: {
color: 'red',
fontSize: '13px'
}
}
备注:当 v-bind:style使用需要厂商前缀的 CSS 属性时如 transform,Vue.js 会自动侦测并添加相应的前缀。
下篇文章,我们将一起学习更多关于条件渲染的知识。