前置说明

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. String 为什么不可变?

    转载来源:String为什么不可变 今天来分享一道群友去阿里云面试遇到的 Java 基础面试真题:"String.StringBuffer.StringBuilder 的区别?String ...

  2. .NET C#杂谈(1):变体 - 协变、逆变与不变

    0. 文章目的:   介绍变体的概念,并介绍其对C#的意义 1. 阅读基础   了解C#进阶语言功能的使用(尤其是泛型.委托.接口) 2. 从示例入手,理解变体   变体这一概念用于描述存在继承关系的 ...

  3. Nginx安装及支持https代理配置和禁用TSLv1.0、TSLv1.1配置

    Linux安装Nginx Nginx安装及支持https代理配置和禁用TSLv1.0.TSLv1.1配置. 下载安装包 [root@localhost ~]# wget http://nginx.or ...

  4. 为什么要写blog????

    写 blog 文章,是种与自我的对话,也是种与外界的联系,也是获得 level up 或 skill learned 的契机. 借口:我不太会写文章,不太会表达,没有东西好写,没人会看我的文章 你想让 ...

  5. 从 CPU 讲起,深入理解 Java 内存模型!

    Java 内存模型,许多人会错误地理解成 JVM 的内存模型.但实际上,这两者是完全不同的东西.Java 内存模型定义了 Java 语言如何与内存进行交互,具体地说是 Java 语言运行时的变量,如何 ...

  6. Vue回炉重造之router路由(更新中)

    安装vue-router npm i vue-router -S 配置1.创建文件夹与文件 创建一个router文件夹,在文件夹中创建两个文件,分别是router.js和routes.js文件.2.编 ...

  7. SpringBoot之缓存

    一.准备工作 首先整合使用Spring整合MyBatis. 可参阅:SpringBoot整合MyBatis SpringBoot整合MyBatis完后后,我们需要在pom.xml中添加缓存相关的依赖. ...

  8. jquery通过id和class取值

    一.Jquery通过id获取Input文本框value值 二.Jquery通过id获取文本内容(1) 三.Jquery通过id获取文本内容(2) 四.Jquey通过class获取文本内容 (注:Jqu ...

  9. ASP.NET Core 根据环境变量支持多个 appsettings.json配置文件 (开发和生产)

    新建一个项目,web根目录会出现一个 appsettings.json  配置文件, 此时添加--新建项,输入  appsettings.Development.json 再新增一个,appsetti ...

  10. 通过Go语言创建CA与签发证书

    本篇文章中,将描述如何使用go创建CA,并使用CA签署证书.在使用openssl创建证书时,遵循的步骤是 创建秘钥 > 创建CA > 生成要颁发证书的秘钥 > 使用CA签发证书.这种 ...