动态修改el-input样式;动态修改elmentUI元素样式;css变量

2023-11-03

在这里插入图片描述

场景:正常我们动态修改div元素的样式,使用:style和:class即可;但是我们想要动态修改element的组件样式时候,例如el-input字体颜色,由于el-input的样式嵌套很深,我们需要修改的实际是.el-input__inner这个样式的color,但是我们在html又没法拿到这个类名。

解决办法:使用css变量修改


一、css变量是什么?

1.css变量

css变量具体可以看这篇

注意:1.声明变量的时候,变量名前面要加两根连词线 –
2.变量使用var() 函数包裹,还可以使用第二个参数,表示变量的默认值。如果变量不存在,就会使用这个默认值

以下代码中,声明了两个变量: --shadow、--size

div {
    font-size: var(--size, 18px);
    box-shadow: var(--shadow);
}

二、修改el-input字体颜色

1.原先正常修改字体颜色

/deep/ .el-input__inner {
  color: red
}

2.动态修改el-input字体颜色

思路:
1.给css引入一个变量--inputColor

        /deep/ .el-input__inner {
          color: var(--inputColor); //使用css变量 注意变量前需要加 --
        }

2.vue声明一个变量颜色colorVal 例如 #606266

data (){
	return {
		colorVal: '#606266',
	}
}

3.需要修改的地方,为--inputColor变量赋值

<el-input v-model="valueStr" :style="{ '--inputColor': colorVal}"></el-input>

4.动态js修改colorVal即可

this.colorVal = 'red'

需要注意:--inputColor是css变量,帮助引导的,colorVal才是设置的样式值

3、以下代码可直接复制

<template>
  <div>
    <el-input v-model="valueStr" :style="{ '--inputColor': colorVal}" @input="change1"></el-input>
  </div>
</template>

<script>
export default {
  data () {
    return {
      valueStr: '',
      colorVal: '#606266',
    }
  },
  created () {
  
  },
  methods: {
    change1 () {
      var r = Math.floor(Math.random() * 256)
      var g = Math.floor(Math.random() * 256)
      var b = Math.floor(Math.random() * 256)
      // 设置随机色
      var color = '#' + r.toString(16) + g.toString(16) + b.toString(16)
      this.colorVal = color
    },
  },
}
</script>

<style lang="less" scoped>
/deep/ .el-input__inner {
  color: var(--inputColor); //使用css变量 注意变量前需要加 --
}
</style>

总结

其他的组件或者组件库,动态修改样式,同样道理

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态修改el-input样式;动态修改elmentUI元素样式;css变量 的相关文章

  • Chrome 扩展:插入固定 div 作为 UI

    我想使用 chrome 扩展将 div 插入固定位置 它将覆盖您当前正在查看的页面 我担心的是 我希望它可以在任何页面上工作而不改变它 除了插入我的固定 div 之外 但我不知道我这样做的方式是否可行 目前 该按钮不会显示 并且我在让 di
  • 在响应模式下使用 CSS 更改元素顺序

    图1为桌面模式 下面两张图片和文字 总共三个div 图 2 是我希望它在移动浏览器 例如手机 中的显示方式 关于如何实现这一点有什么想法吗 我愿意接受任何建议 这个想法是让文本显示在图像上方 以最好地说明这两个图像的描述 在桌面版本中将文本
  • 如何在 HTML 中制作三角形?

    我想使用基本的 CSS 在 HTML 页面中制作三角形 我正在使用需要时间加载的三角形图片 因此 我想减少页面的加载时间 HTML 不可能 但 CSS 可以 例子 div class div
  • 获取 CSS 计算结果以设置自定义属性

    我正在测试一个 CSS 框架 用于通过微类指定数字 例如 类似的东西 div class fifty percent wide 可能会翻译成width 50 该实现使用 CSS 变量 自定义属性 考虑以下 CSS fifty number
  • 显示带有背景颜色的百分比条

    例如 如果我有一个包含两列和 2 行的表 Col1 Percentage 50 50 70 70 如何用代表 COl1 值的颜色填充百分比列 像这样的东西 您可以使用具有两个紧接着的停止点的线性渐变 percentageFill heigh
  • 在 IE10 中禁用捏合放大

    在 IE10 触摸模式下 我希望仅使页面的特定部分可缩放 其余的不应该 我找到了这个 http msdn microsoft com en US library ie hh772044 aspx http msdn microsoft co
  • CSS 选择器用于选择最后两个子项,而不知道列表中有多少项

    我有一个无序列表 它有时包含 4 5 6 或 7 个项目 我想知道是否有一个 CSS 选择器来选择最后两项 我意识到 last child会给我最后一件物品 是否有 倒数第二个孩子 选择器 或者 孩子数量 2 选择器 HTML ul li
  • 如何在 div 容器内的元素之间留出空间

    我有一个弹性容器 它将由元素动态填充 容器没有固定宽度 I use max width max content 并且可以包含我想要的任意数量的元素 问题是我需要这些元素之间的间距 但不需要元素和容器之间左侧和右侧的间距 当然我可以用 ele
  • 使用溢出时无法隐藏滚动条:auto

    我有这个CSS div background color red position relative height 414px overflow auto width 902px margin 0px auto 我尝试过overflow y
  • 如何设置旋转元素背面的样式?

    我有一个figure它是可旋转的 通过用户输入任意角度 该旋转明显地使用transition财产 当该元件旋转超过 90 度 90 度时 元件的背面可见 我想对元素的通常隐藏的一面进行与正面不同的设计 但我不确定如何实现这一点 figure
  • 跨浏览器:禁用输入字段的不同行为(文本可以/不能复制)

    我有一个被禁用的输入 html 字段 在某些浏览器 Chrome Edge Internet Explorer 和 Opera 中可以选择并复制文本 但至少在 Firefox 中这是不可能的 您可以通过在不同浏览器中执行以下代码来测试
  • 如何更改 Shiny 中 navbarPage 折叠的断点

    我想用shiny navbarPage collapsible TRUE 当在小屏幕上查看我的 Shiny 应用程序时 将导航元素折叠到菜单中 默认情况下 当浏览器宽度小于 940 像素时会触发折叠 有什么方法可以改变这一点 以便在稍大的浏
  • CSS:缩放字体大小以适应父块元素的高度

    我发现的几乎每个问题和答案都谈到了视口大小 这确实不是我的问题 拿着这支笔 https codepen io njt1982 pen pZjZNM https codepen io njt1982 pen pZjZNM 我有一个非常基本的
  • 使用滤镜将css3灰色图像转为蓝色?

    我正在尝试将灰色图像变为更蓝色的色调 真的不知道如何为此设置滤镜或是否可能 该图像只有一种颜色 cacaca 其余部分透明 我正在尝试使用相同的图像进行一些叠加 以便它仅突出显示那些彩色部分而不是透明区域 一直在尝试其中的一些 但没有取得多
  • 两个 Div 之间的固定宽度间隙

    有谁知道如何修复两个 div 之间的间隙 我有一个主要内容 Div 里面有两个带有图片的 Div 视图的宽度为 768 像素 当我开始拉伸视图时 两张图片开始相互远离 但理想情况下 主要内容 Div 应该在周围有空白的情况下拉伸 并且图片之
  • 将样式添加到 mat-autocomplete 的 mat-option

    我有这个 HTML代码在这里 https stackblitz com edit angular mat autocomplete with selected value vx1uqg file src 2Fapp 2Fautocomple
  • 禁用引导列上的滚动

    我正在尝试禁用引导列上的滚动 这是我的代码 div class container fluid h 100 div class row h 100 div class col 4 h 100 bg dark fixed div div cl
  • 如何更改bootstrap中form-control弹出窗口中必填字段的默认消息?

  • 指针事件:无,过滤,适用于 ie8 和任何地方,不适用于 ie9

    正如我在这里看到的 https stackoverflow com questions 3680429 click through a div to underlying elements 4839672 4839672 过滤器可用于模拟跨
  • FireFox 中的“contenteditable = true”高度问题

    当有空的时候div with contenteditable true CSS contenteditable true border 1px dashed dedede padding 3px HTML div div 在 IE 和 Ch

随机推荐

  • cramfs文件系统制作

    参考 http blog csdn net liukun321 article details 7256456 1 首先配置内核 打开对cramfs的支持 File systems gt Miscellaneous filesystems
  • win10 安装svn遇到2503错误的解决办法

    win10安装 svn visualsvn ankhsvn 遇到2503错误 解决办法 以管理员身份打开cmd 输入命令 C windows system32 gt msiexec package D 软件 8 SVN AnkhSvn 2
  • vue 自定义组件切换时刷新

    我们在使用vue自定义组件时 常常会遇到切换组件的操作 但是切换组件的时候 如果没有处理好 组件内容就不会刷新 如 标签页下放自定义组件 切换标签时 组件里面的内容不刷新 导致页面停留在上一次的操作 那么我们应该如何来解决这个问题呢 接下来
  • 1 Linux系统性能测试与监测工具汇总

    综合能力 性能测试 Unixbench root localhost Run 计算 查看当前CPU负载 uptime root localhost uptime 测试单cpu计算能力 bc root localhost time echo
  • iOS APP开发

    iOS APP开发 一 个人开发者申请 苹果ID Apple ID 的创建 成为开发者 二 如何开发一个app Id 证书 配置文件 开发者账号的管理 iOS 项目打包和发布 一 个人开发者申请 使用苹果设备时必须要有一个苹果账户 苹果账户
  • unity场景体跳转教程(超简单)

    场景跳转 首先创建一个页面 如下图 在图片中添加画布 图片 按钮 再加一个空物体 这个场景我起名叫1 然后在新建一个一样的场景我叫的是2 里边同样有画布 按钮 空物体 然后再新建一个脚本文件夹写上如下代码 using System Coll
  • su: failed to execute /bin/bash: Permission denied问题解决

    昨天夜里发版 有两台机器因为云官方改配 突然切换不到普通用户 su su failed to execute bin bash Permission denied 根据百度 原来是 bin bash权限设置的原因 chmod 755 bin
  • vue+Ts 报vue ts this报Property ‘x‘ does not exist on type

    个人感觉就是TS检测不到this的类型 解决方法如下 1 第一种方法 this as any 后面跟要调用的就行 2 第二种方法 tsconfig json文件 strict false 改成false 参考链接 https cn vuej
  • 浅谈Python解释器的组成

    Python解释器是一个复杂的软件 它可以解释和执行Python代码 以下是Python解释器的主要组成部分 源代码词法分析器 Lexical Analyzer 这部分的任务是将输入的Python源代码分解成称为 tokens 的基础元素
  • Diffusion笔记

    一 Diffusion是什么 Diffusion 是一种去噪扩散模型 工作原理是对图像逐步施加噪点 直至图像被破坏变成完全的噪点 然后再逆向学习从全噪点还原为原始图像的过程 而 AI 所看到的是全是噪点的画面如何一点点变清晰直到变成一幅画
  • C++-Cmake指令:cmake_minimum_required

    命令格式 cmake minimum required VERSION
  • nginx禁用3DES和DES弱加密算法

    nginx禁用3DES和DES弱加密算法 项目背景 最近护网行动 收到漏洞报告 如下 漏洞名称 SSL TLS协议信息泄露漏洞 CVE 2016 2183 原理扫描 详细描述 TLS是安全传输层协议 用于在两个通信应用程序之间提供保密性和数
  • 创建第一个phpstorm项目(phpstorm+Apache)

    创建第一个phpstorm项目 1 点击新建项目 2 选择新建空项目 3 选择新建项目位置 由于要使用apache 所以项目一定要建在apache下的htdocs下 4 给项目命完名 5 再次确认文件位置是否正确 点击创建 6 为新创建的项
  • matplotlib刻度值使用科学记数法

    原本 plot 出的图 y 轴刻度值太多 0 想用科学记数法 去掉后面那些 0 效果 要设置 ax ticklabel format style sci scilimits 1 2 axis y 其中 style sci 指明用科学记数法
  • GoFrame 代码生成工具【gf】SQLite ORM映射报错: unknown driver “sqlite3“ (forgotten import?)

    1 环境 Windows10 golang1 7 GoFrame1 16 SQLite3 2 异常 执行 gf gen dao 生成代码时报错 unknown driver sqlite3 forgotten import 3 排查 官方文
  • EduCoder_web实训作业--播放视频

    第一关 B A C B AC 第二关
  • 【C++学习第七讲】简单变量(一)

    目录 简单变量 一 简单变量 1 变量名 2 整型 3 整型short int long和long long 面向对象编程 OOP 的本质是设计并扩展自己的数据类型 设计自己的数据类型就是让类型与数据匹配 如果正确做到了这一点 将会发现以后
  • 博客志第一天——判断一个整数N是否是完全平方数?

    关注博客园很久 今天是第一次写博客 先附上一个C题目 写一个函数判断一个整数是否为完全平方数 同时是否该数的各位数至少两个相同的数字 1 include
  • 期货开户要注意轻仓止损

    保持同一比例的仓位 比如说 每次做一手 赚了5次 然后有一次做了10手 亏了一次 那么 可能把前面赚的钱全亏回去 排除任何的主观预测 根据实际行情走势来操作 而不是根据自己的预测或是期望或是恐惧来操作 不能因为预测行情涨而买入 也不能因为预
  • 动态修改el-input样式;动态修改elmentUI元素样式;css变量

    场景 正常我们动态修改div元素的样式 使用 style和 class即可 但是我们想要动态修改element的组件样式时候 例如el input字体颜色 由于el input的样式嵌套很深 我们需要修改的实际是 el input inne