网络编程
位置:首页>> 网络编程>> JavaScript>> vue绑定class与行间样式style详解

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

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

标签:vue,class,style

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

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com