位置: IT常识 - 正文

Vue动态样式方法总结(vue 动态样式)

编辑:rootadmin
Vue动态样式方法总结 Vue动态样式实现方式

推荐整理分享Vue动态样式方法总结(vue 动态样式),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue 动态样式,vue中动态style,vue动态v-model,vue设置动态class,vue设置动态class,vue 动态样式,vue中动态style,vue 动态样式,内容如对您有帮助,希望把文章链接给更多的朋友!

前言Vue动态样式方法总结(vue 动态样式)

本文主要针对 Vue2.x 来展开vue的动态css样式方法归纳。 如果亲爱的读者们需要,后续会更新Vue3的动态样式方法或者使用TypeScript来实现。 CSS动态样式 一般用于设置某个字段根据状态显示不同的样式。 比如 字段A,平时返回0,正常显示字段黑色;返回1时,显示异常,文字颜色为红色

Vue动态样式实现方式:style 动态设置style行内样式,优先级最高:class 动态设置class类名method:{} 调用方法return返回v-if/v-else + 复合类名:style// 1、三元表达式 对象形式<div class="name" :style="{color:state == true ? 'red' : 'black'}">麻辣香锅</div><div class="name" :style="state == true ? 'color:red' : 'color:black'">麻辣牛锅</div>// 2、直接对象形式 <div class="name" :style="{fontSize:`${size}px`}">麻辣火锅</div>// 3、数组形式<div class="name" :style="[styleObj1,styleObj2]">麻辣香锅</div>// 4、复合型<div class="name" :style="[{color:state ? 'red' : 'black'},styleObj2]">麻辣香锅</div>// 4、调用方法形式<div class="name" :style="setStyle()">麻辣鸡煲</div>export default {data(){ return{ state:1, size:14, Obj1:{ color:red }, Obj2:{ fontSize:12px } }}, method:{ setStyle(){ let obj = { color:'red', fontSize:'14px' } return obj } }}<style> .name{ color:yellow; font-size:12px; }</style>

注意:

HTML上调用的所有东西,最好是该vue实例的data、method、watch、computed等本身的变量和函数,一般不要直接调用外部的函数,比如是工具类untils的方法,有需要可以在data中新建变量绑定在HTML上,在data方法或其他方式去调用。js的样式属性名注意用驼峰命名法,比如font-size —— fontSize:class// 1、三元表达式,对象/数组形式,单个条件<div class="name" :class="{'success-text':state == true}">广式煲仔饭</div><div :class="['name', state == true ? 'success' : '']">广式煲仔饭</div>// 相当于<div class="name" :class="state == true ? 'success-text : ''">广式煲仔饭</div>// 2、对象形式,多个条件<div class="name" :class="{'success-text':state == true,'success-text2':state2 == true}">广式煲仔饭</div>// 3、data形式或者computed形式 (缺点就是类名一定只能是一个单词)<div class="name" :class="classObject">广式煲仔饭</div><div class="name" :class="classObject_cp">广式煲仔饭</div>// 4、mothod方法<div class="name" :class="setClass()">广式煲仔饭</div><button @click="state = state ? false : true">改变state状态</button>export default { data () { return { state:true, state2:true, styleObj1:{ color:'red' }, styleObj2:{ fontSize:'14px' }, classObject:{ success_text:true, // 因为变量名不能用-来隔开,所以只能匹配到_或只有一个单词的类名 success_text2:true } } }, computed:{ classObject_cp:function(){ return{ success:this.state, success2:this.state2 } } }, methods: { setClass(){ return { success_text:this.state, success_text2:this.state2 } }, changeState(){ this.state = this.state ? false : true } }}<style> .name{ color:yellow; font-size:12px; } .error-text{ color:red; } .success-text{ color:greenyellow; } .success-text2{ font-size:16px; font-weight: 600; } .success{ color:greenyellow; } .success2{ font-size:16px; font-weight: 600; }</style>

:class 目标就是通过判断找到对应的css类名

方法3或4,注意类名只能是单个单词或_连接等,此外的,都不行,因为js变量名是以单个单词组成的。 比如这里success-text,变量无法表达出来,就算了驼峰命名也不行,因为successText是类名,不像:style行内式,是作为css属性名。

:style优先级高,无需考虑本标签元素class的属性,因为一定会被style相同的属性所覆盖;v-if/v-else + 复合类名 <div class="father"> <div class="child success-text">child</div> <div class="child"> <div v-if="state == true" class="success-text">child</div> <div v-else-if="state == false" class="error-text">child</div> <div v-else>--</div> </div> <div class="child">child</div> </div> <style> .father{ color:black } .child{ fotn-size:16px } .success-text:{ color:green } .error-text{ color:red } </style>结尾

纸上得来终觉浅, 绝知此事要躬行。

本文链接地址:https://www.jiuchutong.com/zhishi/299374.html 转载请保留说明!

上一篇:网络安全——网络层安全协议(网络安全网页设计作品构思)

下一篇:Android ImageView使用详解(系列教程三)

  • 固定资产更新改造资本化条件
  • 电子发票上的字体大小
  • 应收账款和应付账款对冲会计分录
  • 发生销售折让时为什么不冲减成本
  • 现金日记账怎么记账借方还是贷方
  • 小规模纳税人财务报表是按季还是按月申报
  • 公司内帐和外账的区别
  • 注销时公司账上没有钱付股东投资款
  • 补缴的公积金可以抵扣个税吗
  • 年会的奖金入什么科目
  • 不付供应商尾款了怎么清账
  • 股东租车给公司押金
  • 个税退税手续费税率
  • 固定资产一次性扣除政策2023文件
  • 公司零报税需要会计吗
  • 销售单价的变动,将促使保本点( )
  • 商业承兑汇票是谁签发的
  • iphone6s怎么开启开发者选项
  • 月末一次加权平均法是什么意思
  • 工厂院子里的地图怎么画
  • 硬盘分区的原则主要有哪些
  • 苹果手机怎么修改默认输入法
  • smartypig
  • macos如何备份
  • linux系统中安装软件的批处理文件
  • searchnav.exe - searchnav是什么进程 有什么用
  • PHP:mb_check_encoding()的用法_mbstring函数
  • 自由职业者如何交五险一金
  • php 截断
  • 浅析是什么意思
  • 装修费还没摊销完就搬家了
  • 微软 大中华区 前副总裁
  • 资本化过程
  • 红字申请表开错了怎么办
  • 物业费少交点,有什么理由
  • 小规模销售收入超过500万
  • c语言realloc函数的用法
  • 出口退税单机版是什么意思
  • 债务豁免的账务处理
  • 个税适用税率怎么确定
  • 损益类账户怎么记入总账
  • 进项发票未认证
  • 搬迁补偿款的会计分录
  • 银行付款明细
  • 抵账协议上可以签字吗
  • 现金折扣与商业折扣的计算
  • 年初余额和期末余额对不上怎么办
  • jdbc连接mysql数据库步骤
  • windows server2014 安装 Mysql Applying Security出错的完美解决方法
  • 获取客户端所有cookie对象的方法
  • centos6yum源
  • 关闭antivirus
  • Ubuntu 14.04/14.10如何安装记账软件HomeBank?
  • 电脑连接宽带时出错怎么办
  • find linux命令详解
  • explorer.exe中文叫什么
  • win7如何设置搜索包含文件内容
  • drvceox86.exe
  • win8系统如何升级到win10
  • 怎么更改window
  • pc是什么软件
  • win10系统怎么卸载ie浏览器
  • shell脚本实现文件移动、复制等操作
  • JavaScript中数组包含的属性和方法有哪
  • javascript常用语法
  • javascript总结
  • 在批改中,可以使用x表示错误
  • 数据库的列名是什么
  • git pull could not read from remote repository
  • python爬虫工作内容
  • javascript 继承
  • android教学
  • 手机unity游戏
  • 安卓自定义app
  • 设置自定义
  • 浙江国家税务局电子税务局官网入口
  • 涉嫌虚开增值税专用发票罪
  • 社保工资申报错了可以重新申请吗
  • 大同地税局地址
  • 工会经费少申报一个月可以下个月补上吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设