当前位置: 首页 > news >正文

vue动态绑定样式

通过动态绑定style和控制css属性的值来实现

效果是这样的,点击按钮的时候给文本赋值上随机的颜色。

一个很简单的功能,主要用到了js的random函数,vue动态绑定样式。

<template><div><div :style="{color:color1}" style="font-size: 25px;">123qwe</div><el-button @click="changeCol">切换颜色</el-button></div>
</template>
<script setup>
import { ref } from 'vue';const getRandomColr=()=>{// 生成第一个 0 到 255 之间的随机整数let num1 = Math.floor(Math.random() * 256);// 生成第二个 0 到 255 之间的随机整数let num2 = Math.floor(Math.random() * 256);// 生成第三个 0 到 255 之间的随机整数let num3 = Math.floor(Math.random() * 256);// 将三个随机数用逗号连接成一个字符串return `rgb(${num1},${num2},${num3})`;
}
//声明初始值
let color1=ref();
// 首次赋值
color1.value=getRandomColr();
//点击按钮 随机赋值一个颜色
const changeCol=()=>{color1.value=getRandomColr();
}</script >

声明一个变量color1来存储rgb颜色的值,声明一个方法来随机生成rgb的值,使用random函数来控制rgb的值 (0-255)。 

当需要动态绑定多个值的时候,使用逗号隔开

 <div :style="{color:color1,backgroundColor:color2}" style="font-size: 25px;">123qwe</div>
const color2=ref('#eee')

 

灰色的背景色可以看到已经添加上去了 。

通过变量结合三元运算符来控制是否加载类名

<template><div><h2 :class="isFlag ?'h2Active' :''" @click="isFlag=!isFlag">通过变量来控制是否加载类名</h2></div>
</template><script setup>
import { ref } from 'vue';const isFlag=ref(false);
</script><style scoped>.h2Active{color: red;
}</style>

运行效果,点击文本的时候去修改isFlag的值 来控制h2Active类名是否加载

 

 在演示一个
当isFlag值发生变化的时候,会给第二个h2 添加动画去隐藏显示h2

<template><div class="box"><h2 :class="isFlag ? 'h2Active' : ''" @click="isFlag = !isFlag">通过变量来控制是否加载类名</h2><h2 :class="isFlag ? 'demoAnimation' : 'demoAnimation2'">这是一段文本xxxxxxxxxx</h2></div>
</template><script setup>
import { ref } from 'vue';const isFlag = ref(false);
</script><style scoped>
.box {overflow: hidden;width: 500px;border: 1px solid;
}.h2Active {color: red;
}@keyframes hide {from {transform: translateX(0%);}to {transform: translateX(100%);}
}@keyframes show {from {transform: translateX(100%);}to {transform: translateX(0%);}
}.demoAnimation {animation: show linear 2s forwards;
}.demoAnimation2 {animation: hide linear 2s forwards;
}
</style>

 

 end

http://www.lryc.cn/news/579248.html

相关文章:

  • 利用tcp转发搭建私有云笔记
  • (第三篇)HMTL+CSS+JS-新手小白循序渐进案例入门
  • Spring Cloud 微服务(链路追踪与日志聚合)
  • Springboot开发常见注解一览
  • Rust 安装使用教程
  • 【数字后端】- 什么是AOI、OAI cell?它们后面数字的含义
  • 无代码自动化测试工具介绍
  • windows系统下将Docker Desktop安装到除了C盘的其它盘中
  • SpringSSM
  • SQLMesh中的SQL模型:从基础定义到高级应用
  • Python3完全新手小白的学习手册 10 文件和异常
  • C++ 完美转发(泛型模板函数)
  • Python训练营Day1
  • Spring生态在Java开发
  • AI:什么是Agent
  • [学习记录] HLSL-编译指示及属性
  • C#上位机串口接口
  • Android Studio使用HTTP代理下载依赖
  • 红黑树:高效平衡的秘密
  • linux中的种子下载方案ED2K BT
  • OpenGL空间站场景实现方案
  • 网络协议传输层UDP协议
  • SpringBoot+Docker+Graylog - 让错误自动报警
  • HCIA-实现VLAN间通信
  • 应用密码学纲要
  • vue中ref()和reactive()区别
  • 智能物流革命:Spring Boot+AI实现最优配送路径规划
  • AI之Tool:Glean的简介、安装和使用方法、案例应用之详细攻略
  • STM32F103_Bootloader程序开发11 - 实现 App 安全跳转至 Bootloader
  • OpenHarmony 5.0 解决点击导航栏切换后台按钮再切换到前台导航栏可能覆盖输入法问题,导致输入法下沉,最下面的显示不全