前置说明

Vue 绑定HTML 全局属性style,可以动态地改变属性值。这里就不讲内联样式的基础了,具体轻查看官网文档 Class 与 Style 绑定

主要分为以下两个步骤进行:

  1. v-bind 指令绑定指定标签的内联样式;
  2. 组件实例初始响应式状态的 data() 函数写响应式数据,即内联样式的属性值。

绑定内联样式

看下面的例子,当我们修改data()返回的themeColor变量时,Vue 紧接着动态地修改 p 标签内联样式属性值:

<p :style="{ 'color': themeColor }">Hello World!</p>
Vue.createApp({
data() {
return {
themeColor: 'red'
};
}
}).mount('#app');

CSS 变量作用域

CSS 变量的使用范围是有限制的,也就是作用域,只作用于声明变量处节点下的所有节点。如下所示:

<div id="app" style="--font-color: 12px;">
<p>Hello World!</p>
</div>
#app > p {
color: var(--font-color);
}

--font-color就是 CSS 变量,这个变量值允许app#div下的节点使用,相邻节点不可以。

结合 CSS 变量

data()返回两个值:fontColor 和 fontSize。

Vue.createApp({
data() {
return {
fontColor: 'red',
fontSize: '14'
};
}
}).mount('#app');

Vue 挂载根节点app#div,并绑定其内联样式:--font-color以及--font-size。如下所示:

<div id="app" :style="{ '--font-color': fontColor, '--font-size': fontSize + 'px' }">
<p>1 Hello World!</p>
<p>2 Hello World!</p>
<!-- ...... -->
<input v-model="fontColor" placeholder="输入字体大小值" />
<input v-model="fontSize" placeholder="输入字体颜色值" />
</div>

p 属性值用var()函数代替。如下所示:

p {
color: var(--font-color);
font-size: var(--font-size);
}

在输入框内输入想要的颜色以及字体大小,Vue 可以动态地修改这些 p 标签的样式:

Vue 内联样式的更多相关文章

  1. Vue 内联样式的数据绑定

    Vue 内联样式的数据绑定 之前学的是数据绑定 class,现在可以将数据绑定到 style 中. <div id="app"> <div v-bind:styl ...

  2. vue 内联样式style中的background

    在我们使用vue开发的时候   有很多时候我们需要用到背景图 这个时候会直接使用 内联样式 直接把你拿到的数据拼接上去 注意  在vue中直接使用style时 花括号一定别忘记 还有就是你的url一定 ...

  3. Vue.js05:vue内联样式

    对象就是无序键值对的集合 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  4. vue 内联样式style三元表达式(动态绑定样式)

    <span v-bind:style="{'display':config.isHaveSearch ? 'block':'none'}" >动态绑定样式</sp ...

  5. Vue学习之路第十二篇:为页面元素设置内联样式

    1.有了上一篇的基础,接下来理解内联样式的设置会更简单一点,先看正常的css内联样式: <dvi id="app"> <p style="font-si ...

  6. webpack4对第三方库css,项目全局css和vue内联css文件提取到单独的文件(二十二)

    在讲解提取css之前,我们先看下项目的架构如下结构: ### 目录结构如下: demo1 # 工程名 | |--- dist # 打包后生成的目录文件 | |--- node_modules # 所有 ...

  7. Vue.js style(内联样式)

    Vue.js style(内联样式) 我们可以在 v-bind:style 直接设置样式: <div id="app"> <div v-bind:style=&q ...

  8. vue 绑定 class 和 内联样式(style)

    <div id="app31"> <!--多个属性 ,号隔开--> <!-- v-bind:style="{fontSize: fontSi ...

  9. v-bind指令动态绑定class和内联样式style

    动态绑定class—概述 数据绑定(v-bind指令)一个常见需求是操作元素的 class 列表.因为class是元素的一个属性,我们可以用 v-bind 处理它们 我们只需要计算出表达式最终的字符串 ...

随机推荐

  1. IDEA找不到类但实际存在的问题解决

    不知道某天开始Idea就开始抽风了. 现象: 一个service的接口类,就在同一个包下,但总是找不到,编辑器一直标红 编译可以通过 说明类本身应该是没什么问题的.问题是怎么重新编译重新reload ...

  2. Spire.Office激活

    更新记录: 2022年5月28日 初始代码便于复用 注意:最多支持到:E-ICEBLUE Spire.Office Platinum v6.10.3 引入命名空间: using Spire.Licen ...

  3. ms12-020漏洞

    一.环境说明 kali linux windows 7 sp1 二.ms12-020漏洞利用 msf5 exploit(windows/browser/ms10_002_aurora) > se ...

  4. C#请求HTTPS地址的故障分析和TLS知识点总结

    背景介绍 近期收到同事反馈,在C#程序中通过HTTPClient请求一个HTTPS的地址时,在本地开发环境和测试环境均能正常执行,而部署到生产环境后发生异常且稳定复现,异常提示为:[请求被中止: 未能 ...

  5. Java之取余操作 "%"

    取模运算与取余运算两个概念有重叠的部分但又不完全一致.主要的区别在于对负整数进行除法运算时操作不同. 对于整形数a,b来说,取模运算或者求余运算的方法都是: 1.求 整数商 c = a / b: 2. ...

  6. 小米社区APP深度体验

    小米社区APP深度体验 版本:3.0.210928 BUG 1,在暗黑模式下,会员一栏中的成就等级小字未作深色模式调整,从而造成文字难于识别. 2,在暗黑模式下,会员页中底部的会员产品首页视觉没有完美 ...

  7. git无法使用Tab提示

    1.过去git版本: git version 2.获取git-completion.bash脚本,注意将下方链接的版本号改为和git版本一致. https://raw.githubuserconten ...

  8. 牛客SQL刷题第三趴——SQL必知必会

    01检索数据 SQL60 从 Customers 表中检索所有的 ID 编写 SQL 语句,从 Customers 表中检索所有的cust_id select * from Customers; SQ ...

  9. 串口应用:遵循uart协议发送N位数据(状态优化为3个,适用任意长度的输入数据,取寄存器中的一段(用变量作为边界))

    上一节中成功实现了发送多个字节的数据.把需要发送的数据分成多段遵循uart协议的数据依次发送.上一节是使用状态机实现的,每发一次设定为一个状态,所以需要发送的数据越多,状态的个数越多,代码越长,因而冗 ...

  10. vue使用vuex报错 "export 'watch' was not found in 'vue'

    问题 安装Vuex后报错"export 'watch' was not found in 'vue' 解决方法 如果你的vue版本是 2.X ,将vuex升到 3.X.X 就能够解决 npm ...