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

作者:ghostwu 时间:2024-05-08 10:12:12 

一、绑定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>

来源:http://www.cnblogs.com/ghostwu/p/7372193.html

标签:vue,class,style
0
投稿

猜你喜欢

  • SpringBoot用多线程批量导入数据库实现方法

    2024-01-23 23:03:36
  • MySQL批量更新的四种方式总结

    2024-01-13 17:53:08
  • selenium+python自动化测试之页面元素定位

    2021-09-30 18:08:55
  • 安装docker-compose的两种最简方法

    2022-10-03 21:39:44
  • 用60行代码实现Python自动抢微信红包

    2022-06-14 04:25:04
  • 详解Django 中是否使用时区的区别

    2023-08-28 04:29:48
  • SQL Server 2012 开窗函数

    2024-01-28 01:39:15
  • 小试Python中的pack()使用方法

    2021-02-03 06:00:43
  • Tensorflow 实现分批量读取数据

    2023-09-23 23:04:44
  • Python标准库os常用函数和属性详解

    2022-05-17 21:40:03
  • js 浏览器版本及版本号判断函数2009年

    2024-04-28 09:40:54
  • 深入了解如何基于Python读写Kafka

    2021-02-13 09:33:09
  • c#几种数据库的大数据批量插入(SqlServer、Oracle、SQLite和MySql)

    2024-01-13 08:12:32
  • Python 调用PIL库失败的解决方法

    2023-01-25 02:47:08
  • 解决python打不开文件(文件不存在)的问题

    2021-10-15 02:39:46
  • python绘制超炫酷动态Julia集示例

    2023-10-04 12:58:49
  • Python使用定时调度任务的方式

    2021-03-10 01:40:24
  • Go Web 编程中的模板库应用指南(超详细)

    2024-02-05 20:50:55
  • go slice 数组和切片使用区别示例解析

    2023-06-22 04:07:16
  • 用python 制作图片转pdf工具

    2023-02-13 09:14:51
  • asp之家 网络编程 m.aspxhome.com