【Vue】学习笔记-绑定样式/条件样式

这篇具有很好参考价值的文章主要介绍了【Vue】学习笔记-绑定样式/条件样式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

绑定样式

  1. class样式
    写法 :class="xxx" xxx可以是字符串,对象,数组
    字符串写法适用于:类名不确定,要动态获取。
    对象写法适用于:要绑定多个样式,个数不确定,名字也不确定。
    数组写法适用于:要绑定多个样式,个数确定,名字也确定,但不确定用不用
  2. style样式
    :style="{fontSize:xxx}" 其中XXX是动态值。
    :style="{a,b}" 其中a,b是样式对象。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>绑定样式</title>
    <script type="text/javascript" src="../js/vue.js"></script>
    <style>
        .basic{
            width: 300px;height: 50px;border: 1px solid black;
        }
        .happy{
            border: 3px solid red;background-color: rgba(255, 255, 0, 0.644);
            background: linear-gradient(30deg,yellow,pink,orange,yellow);
        }
        .sad{
            border: 4px dashed rgb(2, 197, 2);
            background-color: skyblue;

        }
        .normal{
            background-color: #bfa;
        }
        .atguiu1{background-color: yellowgreen;}
        .atguiu2{font-size: 20px; text-shadow: 2px 2px 10px red;}
        .atguiu3{border-radius: 20px;}


    </style>
</head>
   <!--
        1.class样式
            写法 :class="xxx" xxx可以是字符串,对象,数组
                 字符串写法适用于:类名不确定,要动态获取。
                 对象写法适用于:要绑定多个样式,个数不确定,名字也不确定。
                 数组写法适用于:要绑定多个样式,个数确定,名字也确定,但不确定用不用
        2.style样式
            :style="{fontSize:xxx}" 其中XXX是动态值。
            :style="{a,b}" 其中a,b是样式对象。
   -->
    <!--准备好一个容器-->
    <div id="root">
        <!--绑定class样式 字符串写法,适用于:样式的类目不确定,需要动态指定-->
        <div class="basic" :class="mood" @click="changeMood">{{name}}</div><br/><br/>

        <!--绑定class样式--数组写法。适用于:要绑定的样式个数不确定,名字也不确定-->
        <div class="basic" :class="classArr" >{{name}}</div> <br/><br/>
        
       <!--绑定class样式--数组写法。适用于:要绑定的样式个数不确定,名字也不确定,但要动态决定用不用-->
        <div class="basic" :class="classObj">{{name}}</div> <br/><br/>

        <div class="basic" :style="{fontSize: fsize+'px'}">{{name}}</div> <br/><br/>

        <!--绑定style 样式 --对象写法 -->
        <div class="basic" :style="styleObj">{{name}}</div> <br/><br/>

        <div class="basic" :style="[styleObj,styleObj2]">{{name}}</div> <br/><br/>
       <!--绑定style 样式 --数组写法 -->
        <div class="basic" :style="styleArr">{{name}}</div> <br/><br/>
    </div>
    <script type="text/javascript">
        Vue.config.productionTip =false 阻止Vue启动时生成提示
        //创建Vue实列
        const vm=new Vue({
            el:'#root', //el 用于指定当前Vue实例未哪个容器服务,值通常为css选择器字符串。document.getElementById(root) 
            data: {
                name:'尚硅谷',
                mood:"normal",
                classArr:['atguiu1','atguiu2','atguiu3'],
                classObj:{
                    atguiu1:false,
                    atguiu2:false
                },
                fsize: '40px',
                styleObj:{
                    fontSize:'40px',
                    color:'red'
                },
                styleObj2:{
                    backgroundColor:'orange'
                },
                styleArr:[
                    {
                        fontSize:'40px',
                        color:'blue',
                    },
                    {
                        backgroundColor:'gray'
                    }
                ]
            },
            methods:{
                changeMood(){
                    const arr=['happy','sad','normal']
                    const index=Math.floor(Math.random()*3)
                    this.mood=arr[index]
                }
            }
        });

  

    </script>
</body>
</html>

【Vue】学习笔记-绑定样式/条件样式

条件渲染

  1. v-if
    写法:
    (1)v-if=“表达式”
    (2)v-else-if=“表达式”
    (3)v-else=“表达式”
    • 适用于:切换频率较低的场景。
    • 特点:不展示的DOM元素直接被移除。
    • 注意:v-if可以和v-else-if,v-else 一起使用,但要求结构不能被“打断”。
  2. v-show
    写法:v-show=“表达式”
    适用于:切换频率较高的场景
    特点:不展示的DOM元素未被移除,仅仅是使用样式隐蔽掉’display:none’
    备注:使用v-if 时,元素可能无法获取到,而使用v-show一定可以获取到
    template 标签不影响结构,页面html钟都会有此标签,但值能配合v-if,不能配合v-show
    <div id="root">
        <h2>当前的n值是:{{n}}</h2>
        <button @click="n++">点我n+1</button>
        <!--使用v-show做条件渲染-->
        <!-- <h2 v-show="false">欢迎来到{{name}}</h2><br/><br/> -->
        <!-- <h2 v-show="1===1">欢迎来到{{name}}</h2><br/><br/> -->
        <!--使用v-if做条件渲染 -->
        <!-- <h2 v-if="false">欢迎来到{{name}}</h2><br/><br/> -->
        <!-- <h2 v-if="1===1">欢迎来到{{name}}</h2><br/><br/> -->

        <!--display:none-->
  <!--  <div v-show="n===1">Angular</div>
        <div v-show="n===2">React</div>
        <div v-show="n===3">Vue</div> -->

        <!-- v-if 做条件渲染 都会判断,但不见了 -->
        <div v-if="n===1">Angular</div>
        <div v-if="n===2">React</div>
        <div v-if="n===3">Vue</div>

        <!--v-else 和v-else-if 条件满足,后面的不在执行-->
        <div v-if="n===1">Angular</div>
        <div v-else-if="n===2">React</div>
        <div v-else-if="n===3">Vue</div>
        <div v-else>哈哈</div>
    
        <template v-if="n===1">
            <h2>北京</h2>
            <h2>上海</h2>
            <h2>尚硅谷</h2>
        </template>

    </div>
    <script type="text/javascript">
        Vue.config.productionTip =false 阻止Vue启动时生成提示
        //创建Vue实列
        const vm=new Vue({
            el:'#root', //el 用于指定当前Vue实例未哪个容器服务,值通常为css选择器字符串。document.getElementById(root) 
            data: {
                name:'尚硅谷',
                n:0
            }
        });
    </script>

【Vue】学习笔记-绑定样式/条件样式文章来源地址https://www.toymoban.com/news/detail-413300.html

到了这里,关于【Vue】学习笔记-绑定样式/条件样式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序动态绑定class样式类(三木运算)

    直接上代码,循环列表,根据选中状态显示不同的样式,active就是你在wxss文件里面创建的类名 当然可以同时引用多个,如view class=\\\"E F {{ 表达式?\\\'A\\\':\\\'B\\\' }} {{ 表达式?\\\'C\\\':\\\'D\\\' }}\\\"/view这行代码引用了类E,F,选择引用A或B,选择引用C或D 也可以把三元判别式最后的参数去掉,以达到某

    2024年02月12日
    浏览(23)
  • vue动态绑定class的几种方法

    一、对象语法 1、给v-bind:class 设置一个对象,可以动态地切换class,例如: 最终渲染结果: div class=\\\"active\\\"/div 2、对象中也可存在多个属性,动态切换class,:class 可以合class共存 最终渲染结果: div class=\\\"static active\\\"/div 3、当:class的表达式过长或逻辑复杂时,可以绑定一个计算

    2024年02月13日
    浏览(25)
  • vue2和vue3关于class类的绑定以及style的绑定的区别

    本篇为个人笔记 例如:单个类绑定 多个类绑定:   例如:单个绑定  多个绑定

    2024年02月16日
    浏览(27)
  • Vue-14、Vue绑定style样式

    1、对象写法 2、数组写法 3、总结

    2024年02月02日
    浏览(25)
  • Vue-13、Vue绑定css样式

    1、绑定css样式字符串写法,适用于:样式的类名不确定 2、绑定class样式–数组写法,适用于:要绑定的样式个数不确定、名字也不确定。 3、绑定class样式–对象写法,适用于:要绑定的样式个数确定、名字也确定,但要动态决定用不用。

    2024年01月21日
    浏览(27)
  • uniapp、vue中动态添加绑定style、class

    1.普通对象动态添加(比较常见) 2. 数组 对象动态添加 3.三目运算动态添加

    2024年02月16日
    浏览(24)
  • 【vue3】数据绑定,动态渲染class与style

    数据绑定的一个常见需求场景是操纵元素的 CSS class 列表和内联样式(style)。因为 class 和 style 都是 attribute,我们可以和其他 attribute 一样使用 v-bind 将它们和动态的字符串绑定。但是,在处理比较 复杂的绑定 时,通过拼接生成字符串是麻烦且易出错的。因此,Vue 专门为

    2024年02月13日
    浏览(23)
  • vue3-类与样式绑定

    Class 与 Style 绑定 class 和 style 都是 attribute,我们可以和其他 attribute 一样使用 v-bind 将它们和动态的字符串绑定。 Vue 专门为 class 和 style 的 v-bind 用法提供了特殊的功能增强。除了字符串外,表达式的值也可以是对象或数组。 绑定class :class (v-bind:class 的缩写) 传递一个对象来

    2024年01月19日
    浏览(33)
  • vue动态绑定style样式之动态添加style样式的多种写法

    项目中会需要动态添加 style 行内样式,现指出常用的几种方式。 注意: 1、凡是有 - 的style属性名都要变成驼峰式,比如font-size要变成 fontSize。 2、除了绑定值,其他的属性名的值要用引号括起来,比如 fontSize:\\\'14px\\\' 而不是 fontSize :14px。 对象形式 data(){ return { baseStyles: { width:

    2024年04月17日
    浏览(46)
  • vue、uniapp中动态添加绑定style、class 9种方法实现

    直接使用静态class和style属性: 使用场景:当class和style属性是固定不变的时候,可以直接在模板中写死。 优点:简单直接,没有额外的计算和逻辑。 缺点:无法根据条件动态修改class和style。 使用v-bind动态绑定class和style属性: 使用场景:当class和style属性需要根据组件的da

    2024年02月10日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包