vue 绑定样式

对象语法

1.v-bind:class设置一个对象,动态切换class

<div :class="{'active':isActive}">xxx</div>
样式是否起作用,根据isActive的布尔值是否为true

2.:class可以和class共存

<div class="static" :class="{'active':isActive,'error':isError}">xxx</div>
当isActive值为true,isError为false,样式为 static和isActive。
当isActive值为false,isError为true,样式为 static和isError。
当isActive值为true,isError为true ,样式为 static和isActive、isError

3. :class可以绑定数据中的对象

<div class="static" :class="classobj">xxx</div>
export default {
data(){
return{
classobj:{ //可以直接绑定一个对象,对象里面有多个样式
active:true,
error:false
}
}
}
}

数组语法

4.v-bind:class设置一个数组

使用了数组就要在data中指定重命名

<div class="static" :class="[activeCls,errorCls]">xxx</div>
export default {
data(){
return{
activeCls:'active', //相当于样式active样式在div中重命名 为activeCls
errorCls:'error'
}
}
}
<style>
.active{xxx}
.error{xxx}
</style>

5.三元表达式

<template>
<div id="app">
<div class="static" :class="[isActive?activeCls:errorCls,baseClass]">xxx</div>
</div>
</template>
<script>
export default {
data(){
return{
isActive:true,
activeCls:'active', //当isActive值为true时,会执行activeCls对应的样式 active 并且执行baseClass对应的样式 baseclass
errorCls:'error', //当isActive值为false时,会执行errorCls对应的样式 error 并且执行baseClass对应的样式 baseclass
baseClass:'baseclass'
}
}
}
</script>
<style scoped>
.active{
background: red;
}
.error{
color: white;
}
.baseclass{
text-align: center;
}
</style>

三元表达式

<div class="coupon-img" :class="[item.ticket_type==1?'thirty-yuan':'fifty-yuan']">

6.数组语法中使用对象语法

<template>
<div id="app">
<div class="static" :class="[{'active':isActive},baseClass]">xxx</div>
</div>
</template>
<script>
export default {
data(){
return{
isActive:true, //因为isActive值为true,样式为active 和 baseClass对应的 baseclass 所以样式为 active、baseclass
activeCls:'active',
baseClass:'baseclass'
}
}
}
</script>
<style scoped>
.active{
background: red;
}
.baseclass{
text-align: center;
}
</style>

7.定义一个数组通过不同索引值获取不同样式

<div class="icon" :class="classMap[support.type]"></div>
created () {
this.classMap = ["decrease", "discount", "guarantee", "invoice", "special"]
},
根据support.type的数组变化,索引到classMap对应的样式

绑定内联样式

<div id="app">
<div :style="{color:cl,background:bk}">你好吗?</div></div>
<script>
new Vue({
el:'#app',
data:{
cl:'red',
bk:'yellow'
}
})
</script>

直接绑定到一个样式对象,让模板更清晰:

<div id="app">
<div :style="testObj">你好吗?</div>
</div>
<script>
new Vue({
el:'#app',
data:{
testObj:{
color:red;
background:yellow;
}
}
})
</script>

vue 绑定样式的几种方式的更多相关文章

  1. vue组件通信的几种方式

    最近用vue开发项目,记录一下vue组件间通信几种方式 第一种,父子组件通信 一.父组件向子组件传值 1.创建子组件,在src/components/文件夹下新建一个Child.vue 2.Child ...

  2. 开发vue全局插件的4种方式

    定义全局插件的步骤 定义全局插件 pluginsUtil.js Vue.js 的插件应当有一个公开方法 install .这个方法的第一个参数是 Vue 构造器,第二个参数是一个可选的选项对象: ex ...

  3. JS与JQ绑定事件的几种方式.

    JS与JQ绑定事件的几种方式 JS绑定事件的三种方式 直接在DOM中进行绑定 <button onclick="alert('success')" type="bu ...

  4. Android_安卓为按钮控件绑定事件的五种方式

    一.写在最前面 本次,来介绍一下安卓中为控件--Button绑定事件的五种方式. 二.具体的实现 第一种:直接绑定在Button控件上: 步骤1.在Button控件上设置android:onClick ...

  5. HTML 引用Css样式的四种方式

    不才,只知道HTML引用CSS样式有四种方式,内部引用和外部引用各两种,因为老是忘记细节,记下了随时翻阅亦可方便如我般的初学者 内部引用方式1: 直接在标签内用 style 引用,如: <div ...

  6. 原生js更改css样式的两种方式

    下面我给大家介绍的是原生js更改CSS样式的两种方式: 1通过在javascript代码中的node.style.cssText="css表达式1:css表达式2:css表达式3  &quo ...

  7. 为input标签绑定事件的几种方式

    为input标签绑定事件的几种方式 1.JavaScript原生态的方式,直接复制下面的代码就会有相应的效果 <!DOCTYPE html><html><head> ...

  8. python 中增加css样式的三种方式

    增加css样式的三种方式: <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  9. 【javascript】原生js更改css样式的两种方式

    下面我给大家介绍的是原生js更改CSS样式的两种方式: 1通过在javascript代码中的node.style.cssText="css表达式1:css表达式2:css表达式3  &quo ...

随机推荐

  1. 【安富莱TCPnet网络教程】HTTP通信实例

    第41章      HTTP超文本传输协议基础知识 本章节为大家讲解HTTP(HyperText Transfer Protocol,超文本传输协议),从本章节开始,正式进入嵌入式Web的设计和学习. ...

  2. 零基础java的福音!史上最全最精简的学习路线图!

    这是一个java系统学习路线,从零基础到项目框架开发,每一个阶段里面内容都标记的很清楚,如果你现在也在学习java,你可以跟着这个系统学习路线学,学完自己可以独立的完成项目框架开发,二线城市拿个7k+ ...

  3. IDEA同步上传lua代码,方便开发。

    因项目是Java和lua一起开发的,以前用Notepad++插件连接,每次关掉得重新寻找目录.有点耗时间,所以用idea提供的工具很是便利,再此做个笔记. 点击上面的绿色”+“号,添加 在配置mapp ...

  4. [翻译] 对正在使用EF6x开发人员的一些话

    Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ...

  5. Bootstrap 前端框架 遇到的问题 解决方案

    bootstrap实现导航栏的响应式布局,当在小屏幕.手机屏幕浏览时自动折叠隐藏 直接放代码,更容易理解.下次可以套这个代码 <!DOCTYPE html> <html> &l ...

  6. k邻近算法(KNN)实例

    一 k近邻算法原理 k近邻算法是一种基本分类和回归方法. 原理:K近邻算法,即是给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的K个实例,这K个实例的多数属于某个类,就把该输入实 ...

  7. 持续集成-jenkins介绍与环境搭建

    什么是持续集成? 转自:https://blog.csdn.net/tanshizhen119/article/details/80328523 持续集成,俗称CI, 大师Martin Fowler对 ...

  8. jqGrid 常用 总结 -1

    这篇文章是因为,我们在做的后台项目,里面有大量的表格统计,这个不可能自己手写,所以其中的表格使用的是jqgrid. 这个插件其实使用起来还是不错的,里面有很多的功能很赞.这篇博客就是自己的的一个记录, ...

  9. jsp内置对象-pageContext对象

    1.概念:pageContext对象能够获取JSP页面中的request.response.session.application等其他内置对象.pageContext对象的创建和初始化由容器完成,可 ...

  10. 覆盖ng-zorro样式(非style.scss)

    之前发现在模板的样式表里写样式不起作用,然后想起vue里有个/deep/,angular会不会也有一个,果然,发现了一个::ng-deep可以在模板的样式表里覆盖ng-zorro的样式.记录一下(●' ...