美文网首页
vue-动态 CSS Class

vue-动态 CSS Class

作者: 走停2015_iOS开发 | 来源:发表于2018-06-14 14:43 被阅读134次

操作元素的class列表和内联样式是数据绑定的一个常见需求。因为它们都是属性,所以我们可以用 v-bind 处理它们:只需要通过表达式计算出字符串结果即可。不过,字符串拼接麻烦且易错。因此,在将 v-bind 用于 class 和 style 时,Vue.js做了专门的增强。表达式结果的类型除了字符串之外,还可以是对象或数组。

  • HTML
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Example</title>
    <script src="Lib/vue.js"></script>
    <link rel="stylesheet" type="text/css" href="模块语法.css" />
</head>
<body>
<div id="app">
    <h1>动态 CSS Class</h1>
    <h2 >事例一</h2>
    <div v-on:click="changeColor = !changeColor"  v-bind:class="{changeColor:changeColor}">
        <span>测试</span>
    </div>
   <div v-on:click="changeColor = !changeColor"  v-bind:class="[who,'show']">
        <span class="default" :style="{background:color}">测试</span>
       <span class="default" :style="obj">测试</span>
       <span class="default" :style="[obj,obj2]">测试</span>
    </div>
    <h2>事例二</h2>
    <button v-on:click="changeColor = !changeColor">Change Color</button>
    <button v-on:click="changeLength = !changeLength">Change Length</button>

    <div v-bind:class="comClasses">
        <span>测试</span>
    </div>
</div>
<script src="模板语法.js"></script>
</body>
</html>
  • CSS
span{
    background: red;
    display: inline-block;
    padding: 10px;
    color: #fff;
    margin: 10px 0;
}
.changeColor span
{
    background: green;
}
.changeLength span:after
{
    content: "length";
    margin-left: 10px;

}
  • JS
new Vue({
    el:'#app',
    data:{
       changeColor:false,
       changeLength:false,
    },
    methods:{
  computed:
    {
        comClasses:function()
        {
        return {
            changeColor:this.changeColor,
            changeLength:this.changeLength,
             who:"aaaaaaaaaa",
            color:"red",
            obj:{background:'red'},
            obj2:{fontSize:'30px'},
        }
        }
    }
    },
})

相关文章

  • vue-动态 CSS Class

    操作元素的class列表和内联样式是数据绑定的一个常见需求。因为它们都是属性,所以我们可以用 v-bind 处理它...

  • react 动态修改 class 和 style

    1. 动态修改 class 1. 动态修改class 新建 test.css 在模板中定义className(与条...

  • vue-如何动态切换class

    基础语法 vue讲的很详细在此不再叙述 着重理解v-bind:class是接受了一个对象,'active'是类名,...

  • 4 动画及组件

    vue-> 过渡(动画) (它的本质走的是css3: transtion ,animation) 组件 ...

  • 小程序小bug记录

    1、text标签样式无效 自定义组件中css条件渲染class,动态点击切换css样式,同一个text标签重复点击...

  • 2018-04-03 ng-class 的用法

    当需要根据条件动态设置css样式时,可选择使用ng-class进行设置。将ng-class的值作为一个对象,通过k...

  • vue-01

    1. vue-'Hellow World' el: 元素的挂载位置(值可以是CSS选择器或者DOM元素) data...

  • 如何使用CSS选择除最后一个之外的所有子元素?

    css选择当前class的最后一个元素 css选择当前class的第一个元素 css选择当前class的除最后一个...

  • CSS 教程

    CSS 教程 CSS 教程 CSS 简介 CSS 语法 CSS Id 和 Class选择器 CSS 创建 CSS ...

  • 微信小程序如何动态添加样式

    动态添加style 动态添加class

网友评论

      本文标题:vue-动态 CSS Class

      本文链接:https://www.haomeiwen.com/subject/qgryeftx.html