【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绑定也支持绑定一个数组来应用多个样式对象~

相关推荐
@大迁世界2 小时前
Firefox 本地模式:localhost 再见了 ?
前端·架构
米米商聊4 小时前
同名附件为什么被 Map 覆盖?重复键与一对多索引
前端·javascript
echome8886 小时前
Python 异常处理:try、else、finally 的正确搭配
开发语言·前端·python·异常处理·编程技巧
时间的情敌6 小时前
OpenLayers 实战|Vue3 + OpenLayers 完整工程案例(加载天地图、要素、弹窗、绘制、WFS)
前端·openlayers
陈随易6 小时前
下载神器!Motrix 停更三年后重写回归
前端·后端·程序员
前端的日常6 小时前
一个人+AI做情侣食谱小程序,0 费用的服务器
前端·后端
计算机魔术师7 小时前
谷歌搜索广告踩刹车,AI广告成为救命稻草
前端
总要学点什么7 小时前
第81篇:数据可视化-PM2.5分布——让圆点的胖瘦替每座城市报出浓度
前端·信息可视化·echarts·cesium·空间分析
IT_陈寒7 小时前
Vue的v-for里用了个临时变量,页面直接挂了
前端·人工智能·后端
hunter_0767 小时前
一次 iOS 真机签名 409 的完整排查:证书、设备、描述文件为什么总是"对不上"
前端