vue绑定class与行间样式style详解


Posted in Javascript onAugust 16, 2017

一、绑定class属性的方式

1、通过数组的方式,为元素绑定多个class

<style>
  .red {
    color:red;
    /*color:#ff8800;*/
  }
  .bg {
    background: #000;
    /*background: green;*/
  }
  </style>


  window.onload = function(){
    var c = new Vue({
      el : '#box',
      data : {
        red_color : 'red',
        bg_color : 'bg'
      }
    });
  }



  <div id="box">
    <span :class="[red_color,bg_color]">this is a test string</span>
  </div>

上例为span 绑定2个class,通过设定red_color和bg_color的值,找到对应的class类名

2、通过控制class的true或者false,来使用对应的class类名, true: 使用该class,  false: 不使用该class

<style>
  .red {
    color:red;
  }
  .bg {
    background: #000;
  }
  </style>

  window.onload = function(){
    var c = new Vue({
      el : '#box',
      data : {
      }
    });
  }
  
  <div id="box">
    <span :class="{red:true,bg:true}">this is a test     string</span>
  </div>

3、这种方式,跟第二种差不多,只不过是把class的状态true/false用变量来代替

<style>
  .red {
    color:red;
  }
  .bg {
    background: #000;
  }
  </style>

  window.onload = function(){
    var c = new Vue({
      el : '#box',
      data : {
        r : true,
        b : false
      }
    });
  }

  <div id="box">
    <span :class="{red:r,bg:b}">this is a test string</span>
  </div>

4、为class属性绑定整个json对象

<style>
  .red {
    color:red;
  }
  .bg {
    background: #000;
  }
  </style>

  window.onload = function(){
    var c = new Vue({
      el : '#box',
      data : {
        json : {
          red : true,
          bg : false
        }
      }
    });
  }


  <div id="box">
    <span :class="json">this is a test string</span>
  </div>

 二、绑定style行间样式的多种方式

1、使用json格式,直接在行间写

window.onload = function(){
    var c = new Vue({
      el : '#box',
    });
  }

   <div id="box">
    <span :style="{color:'red',background:'#000'}">this is a test string</span>
  </div>

2、把data中的对象,作为数组的某一项,绑定到style

window.onload = function(){
    var c = new Vue({
      el : '#box',
      data : {
        c : {
          color : 'green'
        }
      }
    });
  }

  <div id="box">
    <span :style="[c]">this is a test string</span>
  </div>

3、跟上面的方式差不多,只不过是为数组设置了多个对象

window.onload = function(){
    var c = new Vue({
      el : '#box',
      data : {
        c : {
          color : 'green'
        },
        b : {
          background : '#ff8800'
        }
      }
    });
  }
<div id="box">
     <span :style="[c,b]">this is a test string</span>
  </div>

4、直接把data中的某个对象,绑定到style

window.onload = function(){
    var c = new Vue({
      el : '#box',
      data : {
        a : {
          color:'yellow',
          background : '#000'
        }
      }
    });
  }
<div id="box">
     <span :style="a">this is a test string</span>
</div>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
12款经典的白富美型—jquery图片轮播插件—前端开发必备
Jan 08 Javascript
JS获取浏览器语言动态加载JS文件示例代码
Oct 31 Javascript
jquery实现简单实用的打分程序实例
Jul 23 Javascript
JavaScript里 ==与===区别详解
Aug 16 Javascript
JS实现显示带倒影的图片横排居中放大展示特效实例【测试可用】
Aug 23 Javascript
JS实现给对象动态添加属性的方法
Jan 05 Javascript
详解Vue微信公众号开发踩坑全记录
Aug 21 Javascript
vue-router项目实战总结篇
Feb 11 Javascript
原生js检测页面加载完毕的实例
Sep 11 Javascript
vue使用nprogress实现进度条
Dec 09 Javascript
vue实现两个组件之间数据共享和修改操作
Nov 12 Javascript
WebRTC记录音视频流(web技术分享)
Feb 24 Javascript
Vue的MVVM实现方法
Aug 16 #Javascript
利用JS制作万年历的方法
Aug 16 #Javascript
原生JavaScript来实现对dom元素class的操作方法(推荐)
Aug 16 #Javascript
React Native 集成jpush-react-native的示例代码
Aug 16 #Javascript
jQuery实现全选、反选和不选功能
Aug 16 #jQuery
微信小程序注册60s倒计时功能 使用JS实现注册60s倒计时功能
Aug 16 #Javascript
微信小程序删除处理详解
Aug 16 #Javascript
You might like
PHP file_get_contents 函数超时的几种解决方法
2009/07/30 PHP
php实现的发送带附件邮件类实例
2014/09/22 PHP
Laravel相关的一些故障解决
2020/08/19 PHP
Extjs优化(一)删除冗余代码提高运行速度
2013/04/15 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
浅谈jquery事件处理
2015/04/24 Javascript
setTimeout内不支持jquery的选择器的解决方案
2015/04/28 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
JavaScript获取浏览器信息的方法
2015/11/20 Javascript
JavaScript中使用数组方法汇总
2016/02/16 Javascript
javascript正则表达式总结
2016/02/29 Javascript
Angularjs中的ui-bootstrap的使用教程
2017/02/19 Javascript
正则 js分转元带千分符号详解
2017/03/08 Javascript
vue.js组件之间传递数据的方法
2017/07/10 Javascript
Vue2几种常见开局方式详解
2017/09/09 Javascript
jquery ztree实现右键收藏功能
2017/11/20 jQuery
Angularjs实现控制器之间通信方式实例总结
2018/03/27 Javascript
vue移动端实现红包雨效果
2020/06/23 Javascript
vue与iframe之间的信息交互的实现
2020/04/08 Javascript
分享一款超好用的JavaScript 打包压缩工具
2020/04/26 Javascript
git进行版本控制心得详谈
2017/12/10 Python
Python实现自动上京东抢手机
2018/02/06 Python
Python爬虫框架scrapy实现的文件下载功能示例
2018/08/04 Python
PowerBI和Python关于数据分析的对比
2019/07/11 Python
python线程信号量semaphore使用解析
2019/11/30 Python
详解python常用命令行选项与环境变量
2020/02/20 Python
Sentry错误日志监控使用方法解析
2020/11/12 Python
使用CSS3制作一个简单的Chrome模拟器
2015/07/15 HTML / CSS
COS美国官网:知名服装品牌
2019/04/08 全球购物
一套VC试题
2015/01/23 面试题
英文求职信结束语大全
2013/10/26 职场文书
电子商务专业学生的学习自我评价
2013/10/27 职场文书
高三地理教学反思
2014/01/11 职场文书
课程改革实施方案
2014/03/16 职场文书
励志演讲稿800字
2014/08/21 职场文书
元旦主持词开场白
2015/05/29 职场文书