Vue中 class 和 style 属性的区别对比

Vue 中 classstyle 属性的核心区别

维度 class style
作用 动态切换 CSS 类名,复用预定义样式 直接绑定内联样式,动态修改元素的 style 属性
绑定语法 :class(v-bind:class 的简写) :style(v-bind:style 的简写)
支持的数据类型 字符串、对象、数组 对象、数组(字符串仅用于简单静态样式)
典型写法 { active: isActive, 'text-bold': isBold } [class1, class2] { color: 'red', fontSize: '13px' } [s1, s2]
与普通属性共存 可与普通 class 并存,不会覆盖 可与普通 style 并存,不会覆盖
适用场景 需要复用 CSS 类、主题切换、状态类(如 active、error) 样式值由数据实时计算、随机颜色、动态尺寸等
性能建议 推荐使用类选择器而非标签选择器,避免 scoped CSS 产生过慢的属性选择器组合 内联样式优先级高,适合少量动态属性;大量样式仍建议写在 CSS 中

一句话总结

  • :class 做"状态标签",把元素打上/摘下预定义的 CSS 类;
  • :style 做"实时化妆",直接给元素注入动态计算出的内联样式。
相关推荐
wuhen_n1 分钟前
阿里云百炼平台 API 接入教程(附 Node.js + TypeScript 实战)
前端·人工智能·阿里云·ai编程
码语智行1 分钟前
操作日志注解模块
java·前端·python
CDN3602 分钟前
【前端实战】LCP指标从2.5s优化至0.8s!用360CDN的WebP自适应与缓存策略榨干性能
前端·缓存
星辰_mya4 分钟前
ThreadLocal之微服务链路追踪
java·开发语言·前端
会编程的土豆8 分钟前
前端和后端是怎么配合工作的(Go后端视角)
前端·golang·状态模式
w_t_y_y9 分钟前
vue父子组件通信(一)父子调用和通信(2)VUE3
前端·javascript·vue.js
Demon1_Coder13 分钟前
Day1-SpringAI-1.0.0版本
java·开发语言·前端
ZC跨境爬虫13 分钟前
跟着 MDN 学CSS day_42:等分轨道、层叠放置与混合布局
前端·javascript·css·ui·html
Cheney950114 分钟前
Vue 项目字体文件打包后 fonts 文件夹“消失”?原因分析与解决方案
前端·javascript·vue.js