前置说明

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. Mysql优化基础之Explain工具

    字段解释 id:代表sql中查询语句的序列号,序列号越大则执行的优先级越高,序号一样谁在前谁先执行.id为null则最后执行 select_type:查询类型,表示当前被分析的sql语句的查询的复杂度 ...

  2. .NET C#基础(5):结构体 - 高性能代码的基石

    0. 文章目的   本文面向有一定.NET C#基础知识的学习者,介绍C#中结构体定义.使用以及特点. 1. 阅读基础   了解C#基本语法   了解.NET中的栈与托管堆 2. 值类型 2.1 .N ...

  3. django框架5

    内容概要 模板语法之过滤器(类似于内置函数) 模板语法之标签(类似于流程控制) 自定义过滤器.标签.inclusion_tag 模板的导入 模板的继承 注释语法补充 前期数据准备(测试环境搭建) al ...

  4. Docker容器编译安装Redis

    Docker容器编译安装Redis 1.创建容器 -i 交互模式 -d 后端运行 -h 容器的hostname --name 容器名 --network 网卡 --ip IP地址 -p 端口映射 -- ...

  5. .NET 处理[未能为 SSLTLS 安全通道建立信任关系]问题

    更新记录 2022年4月16日本文迁移自Panda666原博客,原发布时间:2021年7月16日. 在.NET的开发过程中,发现[基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系]问题 ...

  6. 微信access_token缓存与更新

    由于Access Token有效期只有7200秒,而每天调用获取的次数只有2000次,所以需要将Access Token进行缓存来保证不触发超过最大调用次数.另外在微信公众平台中,绝大多数高级接口都需 ...

  7. 全新升级的AOP框架Dora.Interception[1]: 编程体验

    多年之前利用IL Emit写了一个名为Dora.Interception(github地址,觉得不错不妨给一颗星)的AOP框架.前几天利用Roslyn的Source Generator对自己为公司写的 ...

  8. Redis的内存淘汰策略(八)

    一:Redis的AOF是什么? 以日志的形式来记录每个写操作(读操作不记录),将Redis执行过的所有写指令记录下来(读操作不记录),只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构 ...

  9. node zlib压缩模块了解一下

    压缩: 从index.html压缩成index.html.gz const zlib = require('zlib'); const gzip = zlib.createGzip();const f ...

  10. 使用node.js如何简单快速的搭建一个websocket聊天应用

    初始化项目 npm init 安装nodejs-websocket npm install nodejs-websocket 创建并编辑启动文件 创建一个名为app.js文件,并且编辑它. var w ...