Vue.js学习笔记 第二篇 样式绑定
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学习笔记 第二篇 样式绑定的更多相关文章
- Vue.js学习 Item6 -- Class 与 样式绑定
数据绑定一个常见需求是操作元素的 class 列表和它的内联样式.因为它们都是 attribute,我们可以用 v-bind 处理它们:只需要计算出表达式最终的字符串.不过,字符串拼接麻烦又易错.因此 ...
- Vue.js学习笔记 第一篇 数据绑定
双花括号文本插值 先来个最简单的例子,看完之后立马会用Vue了,是不是很有成就感 <!DOCTYPE html> <html> <head> <meta ch ...
- js学习笔记第二篇
Js笔记整理 1.StringAPI a) 大小写转换:str.toUpperCase();str.toLowerCase(); b) 获取指定位置字符: Str[i]-- ...
- vue.js学习系列-第二篇
一 VUE实例生命周期钩子 1 生命周期函数 定义 生命周期函数就是vue在某一时间点自动执行的函数 2 具体函数 1 new vue() 2 before ...
- vue.js 学习笔记3——TypeScript
目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
- Vue.js学习笔记:在元素 和 template 中使用 v-if 指令
f 指令 语法比较简单,直接上代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " ...
- Vue.js 学习笔记 第4章 v-bind 及 class与style绑定
本篇目录: 4.1 了解v-bind指令 4.2 绑定class的几种方式 4.3 绑定内联样式 DOM元素经常会动态地绑定一些class类名或style样式,本章将介绍使用v-bind指令来绑定cl ...
- Vue.js——学习笔记
Vue-自学笔记 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅 ...
随机推荐
- asp.net C#实现下载文件的六种方法实例
protected void Button1_Click(object sender, EventArgs e) { /* 微软为Response对象提供了一个新的方法TransmitFile来 ...
- 转载: vim使用技巧
两篇很牛的vim使用技巧 来源: ChinaUnix博客 日期: 2009.07.06 10:18 (共有条评论) 我要评论 读本文之前请注意:1. 本文的目标是提供一些vim的使用技巧,利用 ...
- 2205 Problem B
问题 B: [高精度]简单高精度加法 时间限制: 1 Sec 内存限制: 64 MB 提交: 77 解决: 25 [提交][状态][讨论版] 题目描述 修罗王解决了计算机的内存限制问题,终于可以使 ...
- 二、Android应用的界面编程(七)ViewAnimator及其子类[ ViewSwitcher、ImageSwitcher、TextSwitcher、ViewFlipper ]
ViewAnimator是一个基类,它继承了FrameLayout.因此它表现出FrameLayout的特征,可以将多个View组“叠”在一起. ViewAnimator可以在View切换时表现出动画 ...
- mysql with python
前言: 数据库为人类解决了三大问题:持久化存储.优化读写.数据标准化. MySQL它不是数据库,它是管理数据库的软件.MySQL管理了很多数据库.是典型的服务型数据库,需要TCP/IP去连接. MyS ...
- Python之可迭代对象、迭代器、生成器
在使用Python的过程中,很容易混淆如下几个关联的概念: 1.容器(container) 2.可迭代对象(Iterable) 3.迭代器(Iterator) 4.生成器(generator) 5.生 ...
- MVC4学习笔记之--身份认证过滤器
过滤器作为MVC模式中面向切面编程应用很广泛,例如身份验证,日志,异常,行为截取等.博客园里面的大神对应过滤器的介绍以及很多,MVC4中不同的过滤器也介绍得很清楚.FlyDragon 辉太 禁止吸烟 ...
- 【python】-- Django ORM(进阶)
Django ORM(进阶) 上一篇博文简述了Django ORM的单表操作,在本篇博文中主要简述Django ORM的连表操作. 一.一对多:models.ForeignKey() 应用场景:当一张 ...
- MySql 安装常见问题汇总
说明: 以下是针对 Mac 10.11 系统 以前,安装 MySql 数据库后, 设置的密码过于复杂,想更改为简单的密码, 方便数据库的使用. 1. 关闭和启动 MySql 数据库的方法: Syste ...
- PHP判断是手机端访问还是PC端访问网站
Mobile_Detect 是一个轻量级的开源移动设备(手机)检测的 PHP Class, 它使用 User-Agent 中的字符串,并结合 HTTP Header,来检测移动设备环境. 这个设备检测 ...