带- 的可以转为驼峰式,也可以原样写只不过要加上引号
•
不论怎样,最后都是要以对象{}的方式插入上[baseStyles, {fontSize:'16px'}],即使用了数组,数组里也是对象
•
会自动添加特定浏览器前缀
•
多重值:会自动选择浏览器支持的值
<div :style="{ display: ['-webkit-box', '-ms-flexbox', 'flex'] }"></div>
简写为 :style
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'
}
}
同样的,对象语法常常结合返回对象的计算属性使用。
<div v-bind:style="[baseStyles, overridingStyles]"></div>
<div id="class"
v-bind:style="[baseStyles, {fontSize:'16px'}]"
v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }">123
</div>
<script>
new Vue({
el: "#class",
data: {
activeColor: 'red',
fontSize: 30,
baseStyles: {color: 'red'}
}
})
</script>
评论区