在vue中:style 的几种使用方式
在日常开发中:style的使用也是比较常见的:
亲测有效
1.最通用的写法
<p :style="{fontFamily:arr.conFontFamily,color:arr.conFontColor,backgroundColor:arr.conBgColor}">{{con.title}}</p>
2.三元表达式
<a :style="{height:(index==0?'89': ''),margin:(index == 0?'52px 37px':'')color:(index==0?arr.conFontColor:'#000')}" :href="con.subTitleHref" target="_self">{{con.subTitle}}</a>
3. 还可以以上两种方法结合起来
<p :style="{fontFamily:arr.conFontFamily,fontSize:(arr.conFontSize!=0.36?arr.conFontSize+arr.conFontUnit:''),color:arr.conFontColor,backgroundColor:arr.conBgColor}">{{con.title}}</p>
注意:这两种方式有个弊端,当需要把很多个样式添加到div上时,div看起来很臃肿
4.用计算属性
结合计算属性 将样式都提出来 最后形成一个变量 把这个变量添加到div上
这里要做的工作分几步:
- 通过计算属性把要放到一起的样式归整一下
- 针对默认值是空值或者特定值的样式 是不需要将这个样式放到div上的。
-
举例:如果div 已在css样式里设置了font-size 是16px,那么div行内样式 就不要存在font-size:16px 这种重复没有意义 就要做判断去除
这里想到的办法是:
用一个变量存入16 这里是conFontSize,如果conFontSize值等于16 那么就让font-size:''为空 然后通过循环style 将为空的font-size 去掉。
如果不等于16 就是修改的,就要正常显示
-
将:style="arr.styles.conTitleStyle"添加到div上
代码如下:
html
<p :style="arr.styles.conTitleStyle">{{con.title}}</p>
js
data(){return {arr:{styles:{//存放的是 动态修改的样式conTitleStyle:{},// 内容标题总样式conLiStyle:{},//内容li总样式},pieceStyle:{conFontFamily:"",conFontSize:16,conFontColor:"",conBgColor:"",conLineHeight:21,// Writing 专用conLRCenter:"",// 对齐方式 conTopRow:0,//首行缩进 conLetterSpace:0,//字体间隔 conFontBold:"",//加粗 conSpace:""//文字是否省略 }}}
},
computed:{diyConTitleStyle:function(){var pieceD = this.arr.pieceStyle;var fontSizeNum;// 判断对应模块fontSize的默认值 (默认值设置的和css fontsize一样) 如果等于就让这一项的css 为空 不等于就走conFontSize if(this.arr.mtype=='Imglist'){fontSizeNum=(pieceD.conFontSize!=12)}else if(this.arr.mtype=='ImglistScroll'||this.arr.mtype=='NewsList2'){fontSizeNum=(pieceD.conFontSize!=17)}else if(this.arr.mtype=='NavList'){fontSizeNum=(pieceD.conFontSize!=18)}else if(this.arr.mtype=='NavDock'){fontSizeNum=(pieceD.conFontSize!=14)}else if(this.arr.mtype=='NewsList2'){fontSizeNum=(pieceD.conFontSize!=15)}else{fontSizeNum=(pieceD.conFontSize!=16)}// 判断对应模块lineheight的默认值 if(this.arr.mtype=='NewsList'){var lhnum=(pieceD.conLineHeight!=16)}else if(this.arr.mtype=='Writing'){var lhnum=(pieceD.conLineHeight!=21)}//console.log(lhnum)var dt={"color":pieceD.conFontColor,"font-family":pieceD.conFontFamily, "font-size":fontSizeNum?pieceD.conFontSize+"px":"","background-color":pieceD.conBgColor,"line-height":(lhnum?pieceD.conLineHeight+'px':''),"text-align":pieceD.conLRCenter,"text-indent":(pieceD.conTopRow!=0?pieceD.conTopRow+'px':''),"letter-spacing":(pieceD.conLetterSpace!=0?pieceD.conLetterSpace+'px':''),"font-weight":pieceD.conFontBold,"white-space":pieceD.conSpace}//过滤掉即删除掉空值的参数和数值for (var i in dt) {dt[i]==""?delete(dt[i]):1}return dt}
},
watch:{arr:{handler(newValue, oldValue) {// 监听是为了把更改后的样式及时保存到arr.styles里,最后arr是要提交的this.arr=newValue;this.arr.styles.conTitleStyle=this.diyConTitleStyle;this.arr.styles.conLiStyle=this.diyConLiStyle;}deep: true}
}
最后成果 当font-size是16px时:
当font-size 不是16px时 行内样式出现font-size了
5.在:style放两个class样式怎么放
用&& 连接
<p :style="arr.styles.conTitleStyle&&arr.styles.conLiStyle">{{con.title}}</p> 错误
发现只有后面的那个生效。
我希望两个都生效 所以得用数组:正确
<p :style="[arr.styles.conTitleStyle,arr.styles.conLiStyle]">{{con.title}}</p>
相关文章:

在vue中:style 的几种使用方式
在日常开发中:style的使用也是比较常见的: 亲测有效 1.最通用的写法 <p :style"{fontFamily:arr.conFontFamily,color:arr.conFontColor,backgroundColor:arr.conBgColor}">{{con.title}}</p> 2.三元表达式 <a :style"{height:…...

商城小程序后端开发实践中出现的问题及其解决方法
前言 商城小程序后端开发中,开发者可能会面临多种问题。以下是一些常见的问题及其解决方法: 一、性能优化 问题:随着用户量的增加和功能的扩展,商城小程序可能会出现响应速度慢、处理效率低的问题。 解决方法: 对数…...

阿里Arthas-Java诊断工具,基本操作和命令使用
Arthas 是阿里巴巴开源的一款Java诊断工具,深受开发者喜爱。它可以帮助开发者在不需要修改代码的情况下,对运行中的Java程序进行问题诊断和性能分析。 软件具体使用方法 1 启动 Arthas,此时可能会出现好几个jvm的进程号,输入序号…...

Go 1.19.4 路径和目录-Day 15
1. 路径介绍 存储设备保存着数据,但是得有一种方便的模式让用户可以定位资源位置,操作系统采用一种路径字符 串的表达方式,这是一棵倒置的层级目录树,从根开始。 相对路径:不是以根目录开始的路径,例如 a/b…...

jEasyUI 创建标签页
jEasyUI 创建标签页 jEasyUI(jQuery EasyUI)是一个基于jQuery的框架,它为Web应用程序提供了丰富的用户界面组件。标签页(Tabs)是jEasyUI中的一个常用组件,用于在一个页面内组织多个面板,用户可…...

鸿蒙HarmonyOS开发:一次开发,多端部署(界面级)天气应用案例
文章目录 一、布局简介二、典型布局场景三、侧边栏 SideBarContainer1、子组件2、属性3、事件 四、案例 天气应用1、UX设计2、实现分析3、主页整体实现4、具体代码 五、运行效果 一、布局简介 布局可以分为自适应布局和响应式布局,二者的介绍如下表所示。 名称简介…...

使用 Python 模拟光的折射,反射,和全反射
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...

大厂太卷了!又一款国产AI视频工具上线了,免费无限使用!(附提示词宝典)
大家好,我是程序员X小鹿,前互联网大厂程序员,自由职业2年,也一名 AIGC 爱好者,持续分享更多前沿的「AI 工具」和「AI副业玩法」,欢迎一起交流~ 记得去年刚开始分享 AI 视频工具的时候,介绍的大多…...

vue3扩展echart封装为组件库-快速复用
ECharts ECharts,全称Enterprise Charts,是一款由百度团队开发并开源,后捐赠给Apache基金会的纯JavaScript图表库。它提供了直观、生动、可交互、可个性化定制的数据可视化图表,广泛应用于数据分析、商业智能、网页开发等领域。以…...

随机掉落的项目足迹:Vue3 + wangEditor5富文本编辑器——toolbar.getConfig() 查看工具栏的默认配置
问题引入 小提示:问题引入是一个讲故事的废话环节,各位小伙伴可以直接跳到第二大点:问题解决 我的项目不需要在富文本编辑器中引入添加代码块的功能,于是我寻思在工具栏上把操作代码的菜单删一删 于是我来到官网文档工具栏配置 …...

更新 Git 软件
更新 Git 软件本身是指将你当前安装的 Git 版本升级到最新版本。不同的操作系统有不同的更新方法。以下是针对 Windows、macOS 和 Linux 的 Git 更新步骤: Windows 检查当前版本: git --version访问官网下载最新版本: 访问 Git 官方网站 (ht…...

Keil根据map文件确定单片机代码存储占用flash情况
可以从map文件中查看得知,代码占用内存情况大概为35KB,而在在线仿真时,可以看到在flash的0x8008F64地址前均有数据,是代码数据,8F64(HEX)36708(DEC),36708/102335,刚好35。因此,要想操作读写flash,必须在不…...

ByteTrack多目标跟踪流程图
ByteTrack多目标跟踪流程图 点个赞吧,谢谢。...

什么是L2范数
定义: 在数学和计算中,L2 范数是一种用于测量向量长度或大小的方法,也被称为欧几里得范数。对于一个 n 维向量 x ( x 1 , x 2 , … , x n ) \mathbf{x} (x_1, x_2, \dots, x_n) x(x1,x2,…,xn),其 L2 范数定义为&#x…...

Scrapy爬虫IP代理池:提升爬取效率与稳定性
在互联网时代,数据就是新的黄金。无论是企业还是个人,数据的获取和分析能力都显得尤为重要。而在众多数据获取手段中,使用爬虫技术无疑是一种高效且广泛应用的方法。然而,爬虫在实际操作中常常会遇到IP被封禁的问题。为了解决这个…...

信息技术(IT)行业的发展
近年来,信息技术(IT)行业的发展呈现出前所未有的活力和潜力。随着全球数字化转型的加速,IT行业正逐步成为推动社会经济发展的重要引擎。无论是互联网、大数据、人工智能,还是云计算、物联网,这些新兴技术都…...

C++primer第十一章使用类(矢量随机游走实例)
操作符重载 操作符重载(operator overoading)是一种形式的 C多态。 第8章介绍了C是如何使用户能够定义多个名称相同但特征标(参数列表)不同的函数的。这被称为函数重载(function overloading)或函数多态(functional polymorphism),旨在让您能够用同名的函数来完成…...

服务器为什么会受到网络攻击?
随着科技的 快速发展,企业也开展了越来越多的线上业务,但同时也遭受到各种各样的网络攻击,那服务器为什么会受到网络攻击呢?下面就让小编带领大家一起来了解一下吧! 首先企业中服务器被攻击的原因有很多,主…...

IDA Pro基本使用
IDA Pro基本使用 1.DllMain的地址是什么? 打开默认在的位置1000D02E就是DllMain地址 按空格键可以看到图形化界面选择options、general勾选对应的选项在图像化也能看到 2.使用Imports 窗口并浏览到 gethostbyname,导入函数定位到什么地址? 这里可以打开Impo…...

Day.js时间插件的安装引用与常用方法大全
🚀 个人简介:某大型国企资深软件研发工程师,信息系统项目管理师、CSDN优质创作者、阿里云专家博主,华为云云享专家,分享前端后端相关技术与工作常见问题~ 💟 作 者:码喽的自我修养ǹ…...

aws 容器镜像仓库操作
aws 容器镜像仓库产品叫ECR,官方文档参考:Amazon Elastic Container Registry。 1)账号认证 # 配置aws命令 $ aws configure set aws_access_key_id ${ak} $ aws configure set aws_secret_access_key ${sk} 2)镜像仓库登陆 #…...

学习记录:js算法(四十一): 基于时间的键值存储
文章目录 基于时间的键值存储网上思路 总结 基于时间的键值存储 设计一个基于时间的键值数据结构,该结构可以在不同时间戳存储对应同一个键的多个值,并针对特定时间戳检索键对应的值。 实现 TimeMap 类: TimeMap() 初始化数据结构对象void se…...

C语言 | Leetcode C语言题解之第424题替换后的最长重复字符
题目: 题解: int characterReplacement(char* s, int k) {int num[26];memset(num, 0, sizeof(num));int n strlen(s);int maxn 0;int left 0, right 0;while (right < n) {num[s[right] - A];maxn fmax(maxn, num[s[right] - A]);if (right - …...

大数据时代的PDF解析:技术与挑战
在大数据时代,海量信息以不同格式存储,其中 PDF 文件凭借其广泛应用成为了各种业务场景下的主要文档格式。无论是政府文件、企业报告,还是学术论文和技术文档,PDF 都是信息交流的重要媒介。然而,随着信息的爆炸式增长&…...

《nmap 命令全解析:网络探测与安全扫描的利器》
文章目录 一、引言二、nmap 命令概述三、nmap 基本用法(一)安装 nmap(二)简单扫描示例 四、nmap 常见参数(一)-sS(TCP SYN 扫描)(二)-sT(TCP 连接…...

2024年华为OD机试真题-斗地主之顺子-Python-OD统一考试(E卷)
最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客 每一题都含有详细的解题思路和代码注释,精选c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,持续跟新。 题目描述 在斗地主只扑克牌游戏中,…...

亲测有效,长期有效的RTSP流地址公网RTSP地址,各种类型的视频源
我们经常需要做一些实时视频流的测试,但是手边又没有办法及时弄到一个摄像机,我们经常会去搜索一下“公网RTSP地址”,但是大部分现在都失效了,有什么办法能够让我们快速构建一个RTSP流,点几下就能直接用? …...

Excel常用函数大全
Excel常用函数介绍与示例应用 在Excel中,函数是进行数据处理和分析的强大工具。对于新手来说,掌握一些基本的函数使用方法能够大大提升工作效率。以下是一份通俗易懂、适合新手的Excel函数使用方法总结: 1. 求和函数(SUM&#x…...

领夹麦克风哪个品牌好,无线领夹麦克风品牌排名,麦克风品牌大全
无线领夹麦克风因其便携性和隐蔽性,越来越受到演讲者和表演者的青睐。但是,随着市场上品牌和型号的增多,质量也变得参差不齐。许多用户在选购时,会因为缺乏了解而选择到性能不佳的产品,影响声音的清晰度和稳定性。下面…...

【C语言零基础入门篇 - 15】:单链表
文章目录 单链表链表的基本概念单链表功能的实现单链表的初始化单链表新结点的创建单链表头插法单链表的输出单链表的查找单链表修改单链表的删除单链表所有数据结点释放源代码 单链表 链表的基本概念 一、什么是链表? 链表是数据结构中线性表的一种,其…...