前置说明

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. CabloyJS也有工作流引擎了,是你想要的吗?

    前言 众所周知,NodeJS作为后端开发语言和运行环境,样样都好,就差一个NodeJS工作流引擎.CabloyJS 4.0重点开发了NodeJS工作流引擎,并作为内置的基础核心模块,近一步拓展了Nod ...

  2. DAST 黑盒漏洞扫描器 第三篇:无害化

    0X01 前言 甲方扫描器其中一个很重要的功能重点,就是无害化,目的是尽量降低业务影响到可接受程度. 做过甲方扫描器,基本上对于反馈都有所熟悉. "我们的服务有大量报错,请问和你们有关么&q ...

  3. spring源码解析:元注解功能的实现

    前言 众所周知,spring 从 2.5 版本以后开始支持使用注解代替繁琐的 xml 配置,到了 springboot 更是全面拥抱了注解式配置.平时在使用的时候,点开一些常见的等注解,会发现往往在一 ...

  4. Elasticsearch学习系列三(搜索案例实战)

    Query DSL Es提供了基于JSON的完整查询DSL(Domain Specific Language 特定域的语言)来定义查询.将查询DSL视为查询的AST(抽象语法树).它由两种子句组成: ...

  5. 关于react的props你需要知道的一个简单方法

    //注意一点:函数名必须大写 function Clock(props) { return ( <div> <h1>Hello, world!</h1> <h ...

  6. UiPath Orchestrator安装步骤

    UiPath Orchestrator安装步骤 答案在这 https://rpazj.com/thread-219-1-1.html

  7. sql-自动增长的列

    mysql自动增长 如果某一列是数值类型的,使用 auto_increment 可以来完成值得自动增长 方式1:创建表时,添加主键约束,并且完成主键自增长 create table stu( id i ...

  8. NC16649 [NOIP2005]校门外的树

    NC16649 [NOIP2005]校门外的树 题目 题目描述 某校大门外长度为 \(L\) 的马路上有一排树,每两棵相邻的树之间的间隔都是 \(1\) 米.我们可以把马路看成一个数轴,马路的一端在数 ...

  9. java。多态

    package Demo.oop.APP.Demo05; public class application { public static void main(String[] args) { //一 ...

  10. idea 内置tomcat jersey 上传文件报403错误

    Request processing failed; nested exception is com.sun.jersey.api.client.UniformInterfaceException: ...