前端 CSS 动态设置样式::class、:style 等技巧详解
一、:class 动态绑定类名
v-bind:class(缩写为 :class)可以动态地绑定一个或多个 CSS 类名。
1. 对象语法
通过对象语法,可以根据条件动态切换类名。
<template><div :class="{ greenText: isActive, 'red-text': hasError }">海绵宝宝不喜欢侬,喜欢章鱼哥。</div>
</template><script>
export default {data() {return {isActive: true,hasError: false,};},
};
</script><style>
.greenText {color: green;
}
.red-text {color: red;
}
</style>
- greenText:当 isActive 为 true 时,添加 greenText 类。
- red-text:当 hasError 为 true 时,添加 red-text 类。
效果图:

2. 数组语法
通过数组语法,可以同时绑定多个类名。
<template><div :class="[textClass, bgcClass]">海绵宝宝不喜欢侬,喜欢章鱼哥。</div>
</template><script>
export default {data() {return {textClass: 'greenText',bgcClass: 'pinkBgc',};},
};
</script><style>
.greenText {color: green;
}
.pinkBgc {width: 300px;height: 200px;background-color: pink;margin: 200px auto;
}
</style>
- textClass 和 bgcClass 是数据属性,它们的值会同时作为类名绑定到元素上。
效果图:

3. 结合计算属性
当类名的逻辑较为复杂时,可以使用计算属性来动态生成类名对象。
<template><div :class="computedClass">海绵宝宝不喜欢侬,喜欢章鱼哥。</div>
</template><script>
export default {data() {return {isActive: true,hasError: true};},computed: {computedClass() {return {greenText: this.isActive && !this.hasError,'text-red': this.hasError};}}
};
</script><style>
.greenText {color: green;
}
.text-red{color: red;
}
</style>
- greenText:isActive 为true并且hasError为false的时候生效;
- text-red:hasError 为true的时候生效;
效果图:

二、:style 动态绑定内联样式
v-bind:style(缩写为 :style)可以动态地绑定内联样式。
1. 对象语法
通过对象语法,可以直接绑定样式对象。
<template><div :style="{ color: activeColor, fontSize: fontSize + 'px' }">海绵宝宝不喜欢侬,喜欢章鱼哥。</div>
</template><script>
export default {data() {return {activeColor: 'red',fontSize: 12};},
};
</script>
- activeColor 和 fontSize 是数据属性,它们的值会作为样式绑定到元素上。
效果图:

2. 数组语法
通过数组语法,可以同时绑定多个样式对象。
<template><div :style="[styles1, styles2]">海绵宝宝不喜欢侬,喜欢章鱼哥。</div>
</template><script>
export default {data() {return {styles1: {color: 'red',fontSize: '14px'},styles2: {fontWeight: 'bold',textDecoration: 'underline'}};},
};
</script>
- styles1 和 styles2 的所有样式都会绑定到元素上。
效果图:

3. 使用三元表达式
可以在 :style 中使用三元表达式,根据条件动态设置样式值。
<template><div :style="{ color: isActive ? 'green' : 'red' }">海绵宝宝不喜欢侬,喜欢章鱼哥。</div>
</template><script>
export default {data() {return {isActive: true};},
};
</script>
效果图:

4. 使用模板字符串
可以使用模板字符串动态拼接样式值。
<template><div :style="`color: ${isActive ? 'green' : 'red'}; font-size: ${fontSize}px`" class="demo">海绵宝宝不喜欢侬,喜欢章鱼哥。</div>
</template><script>
export default {data() {return {isActive: false,fontSize: 12};},
};
</script>
效果图:

祝大家新年快乐!
相关文章:
前端 CSS 动态设置样式::class、:style 等技巧详解
一、:class 动态绑定类名 v-bind:class(缩写为 :class)可以动态地绑定一个或多个 CSS 类名。 1. 对象语法 通过对象语法,可以根据条件动态切换类名。 <template><div :class"{ greenText: isActive, red-text: hasError }&…...
qt widget和qml界面集成到一起
将 Qt Widgets 和 QML 界面集成在一起可以利用 QQuickWidget 或 QQuickView。以下是基本步骤: 使用 QQuickWidget 创建 Qt Widgets 项目: 创建一个基于 Widgets 的应用程序。添加 QQuickWidget: 在你的窗口或布局中添加 QQuickWidget。 例如,可以在 QMainWindow 中使用: …...
BUU30 [网鼎杯 2018]Fakebook1
是一个登录界面,我们先注册一个试试: 用dirsearch扫描出来robots.txt,也发现了flag.php,并下载user.php.bak 源代码内容: <?phpclass UserInfo {public $name "";public $age 0;public $blog &quo…...
信息科技伦理与道德3-2:智能决策
2.2 智能推荐 推荐算法介绍 推荐系统:猜你喜欢 https://blog.csdn.net/search_129_hr/article/details/120468187 推荐系统–矩阵分解 https://blog.csdn.net/search_129_hr/article/details/121598087 案例一:YouTube推荐算法向儿童推荐不适宜视频 …...
《代码随想录第二十八天》——回溯算法理论基础、组合问题、组合总和III、电话号码的字母组合
《代码随想录第二十八天》——回溯算法理论基础、组合问题、组合总和III、电话号码的字母组合 本篇文章的所有内容仅基于C撰写。 1. 基础知识 1.1 概念 回溯是递归的副产品,它也是遍历树的一种方式,其本质是穷举。它并不高效,但是比暴力循…...
PromptSource官方文档翻译
目录 核心概念解析 提示模板(Prompt Template) P3数据集 安装指南 基础安装(仅使用提示) 开发环境安装(需创建提示) API使用详解 基本用法 子数据集处理 批量操作 提示创建流程 Web界面操作 手…...
USB子系统学习(四)用户态下使用libusb读取鼠标数据
文章目录 1、声明2、HID协议2.1、描述符2.2、鼠标数据格式 3、应用程序4、编译应用程序5、测试6、其它 1、声明 本文是在学习韦东山《驱动大全》USB子系统时,为梳理知识点和自己回看而记录,全部内容高度复制粘贴。 韦老师的《驱动大全》:商…...
Ansible简单介绍及用法
一、简介 Ansible是一个简单的自动化运维管理工具,基于Python语言实现,由Paramiko和PyYAML两个关键模块构建,可用于自动化部署应用、配置、编排task(持续交付、无宕机更新等)。主版本大概每2个月发布一次。 Ansible与Saltstack最大的区别是…...
目前推荐的优秀编程学习网站与资源平台,涵盖不同学习方式和受众需求
一、综合教程与互动学习平台 菜鸟教程 特点:适合零基础新手,提供免费编程语言教程(Python、Java、C/C++、前端等),页面简洁且包含大量代码示例,支持快速上手。适用人群:编程入门者、需要快速查阅语法基础的学习者。W3Schools 特点:专注于Web开发技术(HTML、CSS、JavaS…...
软件工程-软件需求规格说明(SRS)
基本介绍 目标 便于用户、分析人员、设计人员进行交流 支持目标软件系统的确认(验收) 控制系统进化过程(追加需求):拥有版本记录表 需要在软件分析完成后,编写完成软件需求说明书。 具体标准可参考GB…...
运维_Mac环境单体服务Docker部署实战手册
Docker部署 本小节,讲解如何将前端 后端项目,使用 Docker 容器,部署到 dev 开发环境下的一台 Mac 电脑上。 1 环境准备 需要安装如下环境: Docker:容器MySQL:数据库Redis:缓存Nginx&#x…...
UE5.5 PCGFrameWork--GPU CustomHLSL
在上一篇UE5.5 PCGFrameWork使用入门-CSDN博客 大致介绍了UE5 PCG框架的基本使用. 本篇探索PCGFrame的高级应用--GPU点云。也就是利用GPU HLSL编程对点云进行操纵,可以大幅度提升点云生成效率。 目前在UE5 PCG框架中,点云GPU的应用大致分为三类: Point…...
RabbitMQ 如何设置限流?
RabbitMQ 的限流(流量控制)主要依赖于 QoS(Quality of Service) 机制,即 prefetch count 参数。这个参数控制每个消费者一次最多能获取多少条未确认的消息,从而避免某个消费者被大量消息压垮。 1. RabbitMQ…...
json格式,curl命令,及轻量化处理工具
一. JSON格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于一个子集的JavaScript编程语言,使用人类易于阅读的文本格式来存储和表示数据。尽管名字中有“JavaScript”,但JSON是语言无关的,几…...
Postman面试问题
在 API 测试领域,Postman 已成为最流行的工具之一。无论是功能测试、自动化测试,还是接口调试,Postman 都扮演着重要角色。而在软件测试面试中,Postman 相关问题更是高频考点。如果你正在准备面试,赶紧看看这些Postman…...
【JVM详解四】执行引擎
一、概述 Java程序运行时,JVM会加载.class字节码文件,但是字节码并不能直接运行在操作系统之上,而JVM中的执行引擎就是负责将字节码转化为对应平台的机器码让CPU运行的组件。 执行引擎是JVM核心的组成部分之一。可以把JVM架构分成三部分&am…...
esp32 udp 客户端 广播
esp32 udp 客户端 广播 #include "bsp_udpc.h"// #include "com_config.h" // #include "com_xqueue.h"#include "bsp_udpc.h" #define TAG "bsp_udpc"#include <string.h> #include <sys/param.h> #include &q…...
nginx日志存储access日志和error保留180天,每晚把前一天的日志文件压缩成tar.gz
logrotate日志分割时,rotate参数是必须要加的 在logrotate的配置文件中,rotate参数用于指定保留的旧日志文件数量。如果不配置rotate参数,默认是0个,也就是只允许存在一份日志,刚切分出来的日志会马上被删除 l…...
【Java】多线程和高并发编程(四):阻塞队列(上)基础概念、ArrayBlockingQueue
文章目录 四、阻塞队列1、基础概念1.1 生产者消费者概念1.2 JUC阻塞队列的存取方法 2、ArrayBlockingQueue2.1 ArrayBlockingQueue的基本使用2.2 生产者方法实现原理2.2.1 ArrayBlockingQueue的常见属性2.2.2 add方法实现2.2.3 offer方法实现2.2.4 offer(time,unit)方法2.2.5 p…...
C#控件开发6—旋转按钮
按钮功能:手自动旋转,标签文本显示、点击二次弹框确认(源码在最后边); 【制作方法】 找到控件的中心坐标,画背景外环、内圆;再绘制矩形开关,进行角度旋转即可获得; 【关…...
springboot+vue基于web的药店管理系统 药品商城在线购药系统
目录同行可拿货,招校园代理 ,本人源头供货商功能模块分析技术实现要点扩展功能建议项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作同行可拿货,招校园代理 ,本人源头供货商 功能模块分析 后台管理系统(SpringBoot&…...
MATLAB实战:AM调制解调中的噪声影响与优化策略
1. AM调制解调基础与噪声挑战 AM(幅度调制)是模拟通信中最基础的调制方式之一,它的核心思想是通过改变载波信号的幅度来携带信息。我刚开始接触通信仿真时,第一个动手实现的就是AM调制,因为它原理直观,代码…...
SmallThinker-3B-Preview部署教程:边缘设备一键运行的保姆级指南
SmallThinker-3B-Preview部署教程:边缘设备一键运行的保姆级指南 想试试在树莓派或者你的旧笔记本上跑一个自己的AI助手吗?今天要聊的SmallThinker-3B-Preview,可能就是你的菜。它是个小个子,但本事不小,专门为那些内…...
客服机器人开放平台能自建知识库吗?以百应Agent为例,探讨成都企业售后自动解答的实现路径
在数字化转型加速的今天,成都作为西部电商和制造业重镇,众多企业面临售后咨询量激增的挑战。退货、物流追踪、产品故障排查等售后问题占客服咨询的 60% 以上,传统人工客服成本高、响应慢,已难以满足用户即时需求。客服机器人开放平…...
Phi-3-mini-128k-instruct在边缘计算场景的部署:基于ARM架构的实践
Phi-3-mini-128k-instruct在边缘计算场景的部署:基于ARM架构的实践 想象一下,在一个智能工厂的角落里,一个巴掌大小的设备正在实时分析着产线传感器传回的日志,识别潜在故障;或者在一个农业大棚中,一个低功…...
Qwen3.5-2B图文对话实战:教育场景中学生作业图题智能解析案例
Qwen3.5-2B图文对话实战:教育场景中学生作业图题智能解析案例 1. 引言:教育场景中的AI助手需求 想象一下这样的场景:晚上10点,孩子拿着数学作业来问问题,题目是一张手绘的几何图形。家长可能已经忘记了几十年前学过的…...
Fay开源数字人框架:终极多语言翻译与全球化应用指南 [特殊字符]
Fay开源数字人框架:终极多语言翻译与全球化应用指南 🌍 【免费下载链接】Fay fay是一个帮助数字人(2.5d、3d、移动、pc、网页)或大语言模型(openai兼容、deepseek)连通业务系统的agent框架。 项目地址: h…...
别再为PDF表格头疼了!用Nougat+LangChain搞定RAG系统里的表格问答(附完整代码)
突破PDF表格解析瓶颈:Nougat与LangChain构建智能问答系统实战 每次打开满是表格的学术论文PDF时,你是否也经历过这样的挫败感?传统OCR工具要么把跨页表格拆得七零八落,要么将复杂的LaTeX公式识别成乱码,更别提准确关联…...
利用COMSOL软件对变压器局部放电超声波传播特性进行了有限元声学仿真,首先建立包括变压器油、...
利用COMSOL软件对变压器局部放电超声波传播特性进行了有限元声学仿真,首先建立包括变压器油、铁芯、绕组和基座的变压器几何模型,选取符合声压波动方程的压力声学物理场,建立了局放超声波声源模型,可用于研究固定声源的声压时间和…...
【手把手教学】Tesseract-OCR图片文字识别从安装到实战
1. Tesseract-OCR简介与安装准备 第一次接触图片文字识别技术时,我和很多人一样觉得这是个遥不可及的黑科技。直到发现了Tesseract-OCR这个开源工具,才发现原来OCR技术可以如此亲民。Tesseract最初由HP实验室开发,后来由Google接手维护&#…...
