Class绑定的对象语法

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="https://unpkg.com/vue"></script>
<style type="text/css">
.active {
width: 64px;
height: 64px;
background: blue;
}
.text-danger {
background: red;
}
</style>
</head>
<body>
<div id="app-1">
<div v-bind:class="{ active: isActive, textDanger: hasError }"></div>
</div>
<script type="text/javascript">
var vm1 = new Vue({
el: '#app-1',
data: {
isActive: true,
hasError: false
}
})
</script>
</body>
</html>

最基础样式绑定,是否使用样式由后面的布尔值决定

也可以绑定一个对象,这样看起来代码更清爽一些

<div id="app-2">
<div v-bind:class="classObject"></div>
</div>
<script type="text/javascript">
var vm2 = new Vue({
el: '#app-2',
data: {
classObject: {
active: true,
'text-danger': true
}
}
})
</script>

这两段代码中有个地方要特别注意一下,Bootstrap的text-danger属性分别使用了textDanger(驼峰式)和text-danger(串联式)的写法,这2种写法Vue都是支持的,唯一要注意的是使用串联式要加单引号

例如:font-size属性,在Vue里面可以写成fontSize(驼峰式)或'font-size'(串联式)

Class绑定的数组语法

<div id="app-3">
<!-- 可以用三元表达式来选择性的渲染 -->
<div v-bind:class="[activeClass, hasError ? errorClass : '']"></div>
<!-- 也可以在数组语法中使用对象语法 -->
<div v-bind:class="[activeClass, { errorClass: hasError }]"></div>
</div>
<script type="text/javascript">
var vm3 = new Vue({
el: '#app-3',
data: {
hasError: true,
activeClass: 'active',
errorClass: 'text-danger'
}
})
</script>

内联绑定的对象语法

<div id="app-4">
<div v-bind:style="{ color:activeColor, fontSize: fontSize + 'px' }">双子宫殿</div>
</div>
<script type="text/javascript">
var vm4 = new Vue({
el: '#app-4',
data: {
activeColor: 'red',
fontSize: 30
}
})
</script>

同样内联绑定也可以绑定一个对象

<div id="app-5">
<div v-bind:style="styleObject">Hello, TanSea!</div>
</div>
<script type="text/javascript">
var vm5 = new Vue({
el: '#app-5',
data: {
styleObject: {
color: 'green',
fontSize: '20px'
}
}
})
</script>

内联绑定的数组语法

<div id="app-6">
<div v-bind:style="[ baseStyles, overridingStyles ]">Hello, TanSea!</div>
</div>
<script type="text/javascript">
var vm6 = new Vue({
el: '#app-6',
data: {
baseStyles: {
color: 'blue',
fontSize: '30px'
},
overridingStyles: {
fontFamily: '微软雅黑'
}
}
})
</script>

总体来说,样式绑定相对来说是比较简单的,只要记住语法格式就行了

Vue.js学习笔记 第二篇 样式绑定的更多相关文章

  1. Vue.js学习 Item6 -- Class 与 样式绑定

    数据绑定一个常见需求是操作元素的 class 列表和它的内联样式.因为它们都是 attribute,我们可以用 v-bind 处理它们:只需要计算出表达式最终的字符串.不过,字符串拼接麻烦又易错.因此 ...

  2. Vue.js学习笔记 第一篇 数据绑定

    双花括号文本插值 先来个最简单的例子,看完之后立马会用Vue了,是不是很有成就感 <!DOCTYPE html> <html> <head> <meta ch ...

  3. js学习笔记第二篇

    Js笔记整理 1.StringAPI a)        大小写转换:str.toUpperCase();str.toLowerCase(); b)        获取指定位置字符: Str[i]-- ...

  4. vue.js学习系列-第二篇

    一 VUE实例生命周期钩子     1 生命周期函数         定义 生命周期函数就是vue在某一时间点自动执行的函数 2 具体函数      1 new vue()      2 before ...

  5. vue.js 学习笔记3——TypeScript

    目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...

  6. Vue.js学习笔记(2)vue-router

    vue中vue-router的使用:

  7. Vue.js学习笔记:在元素 和 template 中使用 v-if 指令

    f 指令 语法比较简单,直接上代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " ...

  8. Vue.js 学习笔记 第4章 v-bind 及 class与style绑定

    本篇目录: 4.1 了解v-bind指令 4.2 绑定class的几种方式 4.3 绑定内联样式 DOM元素经常会动态地绑定一些class类名或style样式,本章将介绍使用v-bind指令来绑定cl ...

  9. Vue.js——学习笔记

    Vue-自学笔记 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅 ...

随机推荐

  1. android EditText 限定中文个数与英文个数的解决方式

    EditText 限定中文8个英文16个的解决方法. 在EditText上控件提供的属性中有限定最大最小长度的方法. 可是,对于输入时,限定中文8个英文16个时,怎么办?相当于一个中文的长度是两个英文 ...

  2. 用ElasticSearch搭建自己的搜索和分析引擎【转自腾讯Wetest】

    本文大概地介绍了ES的原理,以及Wetest在使用ES中的一些经验总结.因为ES本身涉及的功能和知识点非常广泛,所以这里重点挑出了实际项目中可能会用到,也可能会踩坑的一些关键点进行了阐述. 一 重要概 ...

  3. 43、android:screenOrientation

    android:screenOrientationThe orientation of the activity's display on the device. The value can be a ...

  4. <转> python的垃圾回收机制

    Python的GC模块主要运用了“引用计数”(reference counting)来跟踪和回收垃圾.在引用计数的基础上,还可以通过“标记-清除”(mark and sweep)解决容器对象可能产生的 ...

  5. 【BZOJ1803】Spoj1487 Query on a tree III 主席树+DFS序

    [BZOJ1803]Spoj1487 Query on a tree III Description You are given a node-labeled rooted tree with n n ...

  6. SQL查临时表没有返回数据集

    问题描述:在SQL中可以查询到数据,返回不到页面上. 解决办法: set nocount on create table #list [转] 每次我们在使用查询分析器调试SQL语句的时候,通常会看到一 ...

  7. iOS之事件的传递和响应机制

    前言: 按照时间顺序,事件的生命周期是这样的: 事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的view.寻找最合适的view的底层实现.拦截事件的处理)->找到最合适的view后 ...

  8. 移动端之touch事件--手指的滑动事件

    转自[B5教程网]:http://www.bcty365.com/content-142-5243-1.html 总结:touchmove的最后坐标减去touchstart的起始坐标.X的结果如果正数 ...

  9. Ajax 处理json的方法不同

    json字符串从从后台传递到前台的方法有两种 1.使用context.Response(); 2.使用webmethod 方法调用静态函数 返回的字符串 前者返回的json是obj类型,而后者返回的是 ...

  10. API网关性能比较:NGINX vs. ZUUL vs. Spring Cloud Gateway vs. Linkerd API 网关出现的原因

    API网关性能比较:NGINX vs. ZUUL vs. Spring Cloud Gateway vs. Linkerd http://www.infoq.com/cn/articles/compa ...