Vue的样式绑定详解

 更新时间:2022年02月24日 16:28:21   作者:Tree_wws  
这篇文章主要为大家详细介绍了Vue的样式绑定,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

1. 样式绑定(class、style)

1.1 绑定class

固定的类名就正常的写,需要动态绑定的类名就v-bind去绑定它

例如::class= "mood"

下面举一些适用的场景:

1.绑定class样式—字符串写法,适用于:样式的类名不确定,需要动态指定

2.绑定class样式 — 数组写法使用的场景 :绑定的样式的个数不确定,名字也不确定

3.绑定class样式 — 对象写法使用的场景:绑定的个数确定的,名字也确定,不确定的是用不用该类名

 <body>
    <style>
        .basic {
            width: 100px;
            height: 100px;
            border: 2px solid black;
        }
        .happy {
            width: 100px;
            height: 100px;
            border: 2px solid orange;
            background-color: palevioletred;
        }
        .sad {
            width: 100px;
            height: 100px;
            border: 2px solid black;
            background-color: silver;
        }
        .normal {
            width: 100px;
            height: 100px;
            border: 2px solid greenyellow;
            background-color: sandybrown;
        }
        .outline {
            border-radius: 20%;
        }
        .color {
            color: skyblue;
        }
        .size {
            font-family: '微软雅黑';
            font-size: 20px;
            font-weight: bold;
        }
    </style>
    <div id="root">
        <!-- 
            需求1 :点击div1 随机切换mood
            绑定class样式  ---  字符串写法
            1. 固定的class类名就正常写,需要动态指定的class类名就  :class="xxx"  写到这里面
            2. 使用的场景 : 样式的类名不确定,需要去动态指定
         -->
        <div class="div1 basic" :class="mood" @click="random">{{name}}</div>

        <!-- 
            需求2 : 点击div2 添加类,或者删除类
            绑定class样式  --- 数组写法
            1. 使用的场景 :绑定的样式的个数不确定,名字也不确定
            2. shift() :移除数组中第一个数据, push("xxx");在末尾添加一个新的数据
         -->
        <div class="div2 basic" :class="classArr" @click = "remove">{{name}}</div> 

        <!-- 注意点:在vue操作下 " " 里面的写的字符串是表达式," '' " 里面写的字符串就是值   -->
        <!-- <div class="div2 basic" :class="['outline','color','size']"></div> -->

        <!-- 
            需求3 :在outline和color之间进行切换
            绑定class样式  --- 对象写法
            使用的场景:绑定的个数确定的,名字也确定,不确定的是用不用该类名
         -->
         <div class="div3 basic" :class="classObj" @click="change">{{name}}</div>
    </div>
    <script>
        Vue.config.productionTip = false
        let vm = new Vue({
            el: '#root',
            data: {
                name: "Hello,Vue!",
                mood: "normal",
                classArr:['outline','color','size'],
                classObj:{
                    outline:true,
                    color:true
                }
            },
            methods: {
                random() {
                    let arr = ["happy", "sad", "normal"]
                    // Math.floor : 表示向下取整, Math.random():取值是0-1,1是取不到的
                    this.mood = arr[Math.floor(Math.random() * 3)]
                },
                remove(){
                    this.classArr.shift()
                },
                change(){
                   vm.classObj.color = !vm.classObj.color
                   vm.classObj.outline = !vm.classObj.outline
                }
            }
        })
    </script>

1.2 绑定style

例如::style = "styleobj"

<div id="root" :style="styleobj">
        Hello,{{name}}!
    </div>
    <script>
        Vue.config.productionTip = false
        let vm = new Vue({
            el: '#root',
            data: {
                name:"Vue",
                styleobj:{
                    fontSize: 50 + "px",
                    color: "red",
                    border:1+"px"+" "+"solid"+" "+"black"             
                }
            }
        })
    </script>

总结

本篇文章就到这里了,介绍了class和style如何绑定,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!    

相关文章

  • 关于在Vue中import和require的用法分析

    关于在Vue中import和require的用法分析

    在Vue项目中,我们经常需要引入外部的模块或文件,这时候就会用到import和require这两个关键字,本文将详细分析它们的用法,并提供具体的代码实例和解释,需要的朋友可以参考下
    2023-06-06
  • vue学习教程之带你一步步详细解析vue-cli

    vue学习教程之带你一步步详细解析vue-cli

    这篇文章的主题是vue-cli的理解。或许,很多人在开发vue的时候,我们会发现一个问题——只会去用,而不明白它的里面的东西。现在的框架可以说是足够的优秀,让开发者不用为搭建开发环境而烦恼。但是有时候,我们还是得回到原始生活体验一下,才能够让自己更上层楼。
    2017-12-12
  • 深入探讨Vue3中Composition API的使用方法

    深入探讨Vue3中Composition API的使用方法

    Vue3的Composition API是一个全新的API,它允许开发人员将Vue组件中的逻辑封装在单独的功能性组合中,而不是依赖于Vue选项对象。这篇文章将深入探讨Vue3的Composition API及其使用方法,需要的朋友可以参考下
    2023-07-07
  • vue中的事件修饰符once,prevent,stop,capture,self,passive

    vue中的事件修饰符once,prevent,stop,capture,self,passive

    这篇文章主要介绍了vue中的事件修饰符once,prevent,stop,capture,self,passive,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue中项目页面空白但不报错产生的原因及分析

    vue中项目页面空白但不报错产生的原因及分析

    这篇文章主要介绍了vue中项目页面空白但不报错产生的原因及分析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • 解决vue watch数据的方法被调用了两次的问题

    解决vue watch数据的方法被调用了两次的问题

    这篇文章主要介绍了解决vue watch数据的方法被调用了两次的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 详解Vue3如何优雅的加载大量图片

    详解Vue3如何优雅的加载大量图片

    最近开发了一个功能,页面首页会加载大量的图片,初次进入页面时,会导致页面性能下降,于是乎,我改进了这个功能,可以让所有图片自动懒加载,文中有详细的代码示例,需要的朋友可以参考下
    2023-09-09
  • Vue如何引入全局过滤器

    Vue如何引入全局过滤器

    这篇文章主要介绍了Vue如何引入全局过滤器问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • 浅谈VUE中演示v-for为什么要加key

    浅谈VUE中演示v-for为什么要加key

    这篇文章主要介绍了浅谈VUE中演示v-for为什么要加key,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • Vue之Dep和Observer的用法及说明

    Vue之Dep和Observer的用法及说明

    这篇文章主要介绍了Vue之Dep和Observer的用法及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05

最新评论