【Vue】了解这些类和样式绑定就够了!

hello,我是小索奇,精心制作的Vue系列持续发放,涵盖大量的经验和示例,由浅入深进行讲解。 本章给大家讲解的是类和样式绑定,前面的章节已经更新完毕,后面的章节持续输出,有任何问题都可以留言或私信哈,一起加油~

类和样式绑定

其中:v-bind 的缩写)

绑定class样式

  • 写法:class="soa"soa可以是字符串、对象、数组
  • 字符串写法 :类名不确定,要动态获取
  • 对象写法 :要绑定多个样式,个数&名字也不确定
  • 数组写法 :要绑定多个样式,个数&名字确定,可以进行自定义修改

绑定 style 样式

  • 对象写法::style="{fontSize: xxx}" 其中xxx是动态值
  • 数组写法::style="[a,b]" 其中a、b是样式对象

示例

xml 复制代码
<div id="root">

  <!-- 字符串写法,适用于动态类名 -->
  <!-- 这里具体方法实现可以自定义 -->
  <div :class="color">{{name}}</div>

  <!-- 确定类名数组 -->
  <div :class="classArr">{{name}}</div> 

  <!-- 对象根据条件决定 -->
  <div :class="classObj">{{name}}</div>

  <!-- style对象 -->
  <div :style="styleObj">{{name}}</div>

  <!-- style数组 -->
  <div :style="styleArr">{{name}}</div>

</div>

<script>
const vm = new Vue({
  el: '#root',
  
  data: {
    name: '小索奇',
    color: '#9900ff',
    classArr: ['cls1', 'cls2'],
    classObj: {
      cls1: false
    },
    styleObj: {
      fontSize: '40px',
      color: '#9966ff'
    },
    styleArr: [
      { fontSize: '40px' },
      { color: '#9900ff' }
    ]
  }
})
</script>

记住一个逻辑:不变写死的可以用css定义,变化的vue定义!

:style绑定的值可以是一个对象,对象中的CSS属性名和属性值会被直接设置为元素的行内样式

这样就可以在模板中方便地切换多个样式属性,而不需要预先在CSS中定义className

当绑定的数据变化时,setStyle会响应式地更新应用到元素上

相比在CSS中预定义,:style绑定可以在运行时动态构建样式对象,非常灵活

而且:style绑定也支持绑定一个数组来应用多个样式对象~

相关推荐
切糕师学AI11 分钟前
为什么你的 SPA 网址必须包含 `#`?—— 前端路由 Hash 模式深度解析
前端·spa 网址·hash路由
冴羽18 分钟前
超越Vibe Coding —— AI 辅助编程进阶指南
前端·javascript·ai编程
MXN_小南学前端31 分钟前
自制和整理常用前端 AI Skills分享,从需求到页面(附github地址)
前端·ai编程
yuki_uix38 分钟前
双 RAF + MutationObserver:微前端跳转后的滚动复原完整方案
前端
暗不需求39 分钟前
一文吃透 React Context:跨层级通信的利器
前端·javascript·react.js
Wect39 分钟前
前端工程化 Mock 数据原理与实践
前端·api·前端工程化
小宇的天下1 小时前
Calibre DESIGNrev 单元(Cell)操作核心指南
java·前端·javascript
镜宇秋霖丶1 小时前
2026.5.8@霖宇博客制作中遇见的问题
前端·vue.js·elementui