最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Vue綁定class和style樣式的幾種寫法總結(jié)

 更新時(shí)間:2023年07月17日 09:47:46   作者:小花皮豬  
這篇文章主要介紹了使用Vue綁定class和style樣式的幾種寫法,文章通過代碼示例介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下

綁定class樣式

首先寫一個(gè)簡單的class樣式,和一個(gè)div容器方便調(diào)試 這些class樣式簡單說下用途:basic是最基本的樣式,我們可以配合另外一個(gè)class樣式使用,也就是happy,sad,normal這三個(gè)其中一個(gè)配合使用,hello1,hello2,hello3這三個(gè)樣式我們可以一起使用

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>初始vue</title>
    <style>
        .basic{
           width: 300px;
           height: 100px;
           border: 1px solid black;
        }
        .happy{
            border:4px solid red;
            background-color: rgba(255, 255, 0, 0.644);
            background: linear-gradient(30deg,yellow,pink,orange,yellow);
        }
        .sad{
            border:4px solid cyan;
            background-color: rgba(12, 23, 0, 0.644);
            background: linear-gradient(30deg,rgb(178, 60, 5),rgb(168, 72, 88),rgb(155, 47, 146),rgb(114, 40, 40));
        }
        .normal{
            border:4px solid rgba(12, 107, 107, 0.608);
            background-color: rgba(12, 23, 0, 0.644);
            background: linear-gradient(30deg,rgb(178, 60, 5),rgb(121, 142, 38),rgb(157, 67, 150),rgb(239, 169, 169));
        }
        .hello1{
            background-color: orchid
        }
        .hello2{
            font-size: 40px;
        }
        .hello3{
            color:red
        }
    </style>
    <!-- 引入vue.js -->
    <script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
    <div id="root">
       <div>test</div>
    </div> 
    <script type="text/javascript">
    </script>
</body>
</html>

在頁面上給元素增加class樣式

不同的樣式配置效果也是不同的

三個(gè)hello樣式一起使用,效果就更豐富

由于basic樣式是最基本的,所以我們可以直接把它寫上,完善下代碼

現(xiàn)在提出需求:這個(gè)div有兩個(gè)樣式方案,一開始div的class樣式是basic和normal,如果點(diǎn)擊div則換成basic和happy

錯(cuò)誤演示:使用demo操作,如果我們親自使用demo獲取對象,那么就違背了vue的設(shè)計(jì),雖然可以實(shí)現(xiàn)效果,但是這種方式是不可取的

我們分析需求,其實(shí)不變的是basic,改變的是normal,所以我們可以把class樣式定義一個(gè)屬性,通過單擊事件去切換樣式

字符串寫法

特點(diǎn):適用于樣式的類名不確定,需要?jiǎng)討B(tài)指定

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>初始vue</title>
    <style>
        .basic{
           width: 300px;
           height: 100px;
           border: 1px solid black;
        }
        .happy{
            border:4px solid red;
            background-color: rgba(255, 255, 0, 0.644);
            background: linear-gradient(30deg,yellow,pink,orange,yellow);
        }
        .sad{
            border:4px solid cyan;
            background-color: rgba(12, 23, 0, 0.644);
            background: linear-gradient(30deg,rgb(178, 60, 5),rgb(168, 72, 88),rgb(155, 47, 146),rgb(114, 40, 40));
        }
        .normal{
            border:4px solid rgba(12, 107, 107, 0.608);
            background-color: rgba(12, 23, 0, 0.644);
            background: linear-gradient(30deg,rgb(178, 60, 5),rgb(121, 142, 38),rgb(157, 67, 150),rgb(239, 169, 169));
        }
        .hello1{
            background-color: orchid
        }
        .hello2{
            font-size: 40px;
        }
        .hello3{
            color:red
        }
    </style>
    <!-- 引入vue.js -->
    <script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
    <div id="root">
        <!-- 綁定class樣式 --字符串寫法,適用于樣式的類名不確定,需要?jiǎng)討B(tài)指定 -->
       <div class="basic " :class="mood"  @click="changeMood">{{name}}</div>
    </div>    
</body>
<script type="text/javascript">
    new Vue({
        el:'#root',
        data:{
            name:'vue',
            mood:'normal'
        },
        methods: {
            changeMood(){
                // 獲取div改變class樣式
                this.mood='happy'
            }
        },
    })
</script>
</html>

現(xiàn)在又有一個(gè)需求,就是點(diǎn)擊div隨機(jī)切換class樣式

我們可以把多個(gè)樣式定義成一個(gè)數(shù)組,隨機(jī)使用下標(biāo)作為樣式

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>初始vue</title>
    <style>
        .basic{
           width: 300px;
           height: 100px;
           border: 1px solid black;
        }
        .happy{
            border:4px solid red;
            background-color: rgba(255, 255, 0, 0.644);
            background: linear-gradient(30deg,yellow,pink,orange,yellow);
        }
        .sad{
            border:4px solid cyan;
            background-color: rgba(12, 23, 0, 0.644);
            background: linear-gradient(30deg,rgb(178, 60, 5),rgb(168, 72, 88),rgb(155, 47, 146),rgb(114, 40, 40));
        }
        .normal{
            border:4px solid rgba(12, 107, 107, 0.608);
            background-color: rgba(12, 23, 0, 0.644);
            background: linear-gradient(30deg,rgb(178, 60, 5),rgb(121, 142, 38),rgb(157, 67, 150),rgb(239, 169, 169));
        }
        .hello1{
            background-color: orchid
        }
        .hello2{
            font-size: 40px;
        }
        .hello3{
            color:red
        }
    </style>
    <!-- 引入vue.js -->
    <script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
    <div id="root">
        <!-- 綁定class樣式 --字符串寫法,適用于樣式的類名不確定,需要?jiǎng)討B(tài)指定 -->
       <div class="basic " :class="mood"  @click="changeMood">{{name}}</div>
    </div>    
</body>
<script type="text/javascript">
    new Vue({
        el:'#root',
        data:{
            name:'vue',
            mood:'normal'
        },
        methods: {
            changeMood(){
                // 獲取div改變class樣式
                const arr=['happy','sad','normal']
                const index=Math.floor(Math.random()*3)
                this.mood=arr[index]
            }
        },
    })
</script>
</html>

點(diǎn)擊div就會隨機(jī)切換圖片

數(shù)組寫法

特點(diǎn):適用于要綁定的樣式個(gè)數(shù)不確定,名字也不確定 現(xiàn)在又有一個(gè)需求,新增一個(gè)div,基本樣式還是basic,這個(gè)div樣式可能有多個(gè) 可以把多個(gè)class定義成一個(gè)數(shù)組

可以通過vue管理工具切換動態(tài)刪除新增樣式

對象寫法

特點(diǎn):適用于要綁定的樣式個(gè)數(shù)確定,名字也確定,但是用動態(tài)決定用不用 又提出一個(gè)新的需求:新增一個(gè)div,這個(gè)div可以使用的樣式可以是同時(shí)hello1,hello2,也可以是只有hello1,或者只有hello2,或者兩個(gè)樣式一個(gè)也沒有 這種情況我們可以把需要用到的樣式定義成一個(gè)對象

我們可以點(diǎn)擊復(fù)選框切換屬性或者手動輸入切換

綁定style樣式

樣式的綁定不僅僅有class選擇器,還有行內(nèi)style樣式

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

但是這樣太單調(diào)了,通常我們是把多個(gè)是style樣式放在一個(gè)對象里面

style的對象寫法

注意:如果key是一個(gè)單詞就正常寫即可,如果是多個(gè)單詞,需要遵循駝峰寫法。比如font-size要寫成fontSize

由vue管理的屬性,可以自由切換值

style的數(shù)組寫法

style也可以使用數(shù)組寫法,只是這種寫法寫的比較少

總結(jié)

綁定樣式: 1 class樣式 寫法:class='xxx' xxx可以是字符串,對象,數(shù)組 字符串寫法適用于:類名不確定,要?jiǎng)討B(tài)獲取 對象寫法適用于:要綁定多個(gè)樣式,個(gè)數(shù)不確定,名字也不確定 數(shù)組寫法適用于:要綁定多個(gè)樣式,個(gè)數(shù)確定,名字也確定,但不確定用不用 2 style樣式 :style="fontSize:xxx",其中xxx是動態(tài)值,fontSzie=font-size,如果只有一個(gè)單詞正常寫即可,如果多個(gè)需要使用駝峰命名 :style="[a,b]",其中a,b是樣式對象

以上就是使用Vue綁定class和style樣式的幾種寫法總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于使用Vue綁定class和style的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vue項(xiàng)目打包清除console.log的四種方法總結(jié)

    vue項(xiàng)目打包清除console.log的四種方法總結(jié)

    大家在項(xiàng)目開發(fā)的時(shí)候,需要看看一些后端接口返回的結(jié)果,會多次使用console.log項(xiàng)目開發(fā)完成打包的時(shí)候,發(fā)現(xiàn)控制臺一堆的console.log,非常頭疼,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目打包清除console.log的四種方法,需要的朋友可以參考下
    2023-04-04
  • vue3中g(shù)etCurrentInstance獲取組件踩坑及解決

    vue3中g(shù)etCurrentInstance獲取組件踩坑及解決

    這篇文章主要介紹了vue3中g(shù)etCurrentInstance獲取組件踩坑及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • 詳解vue中在父組件點(diǎn)擊按鈕觸發(fā)子組件的事件

    詳解vue中在父組件點(diǎn)擊按鈕觸發(fā)子組件的事件

    這篇文章主要介紹了詳解vue中在父組件點(diǎn)擊按鈕觸發(fā)子組件的事件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Vue form 表單提交+ajax異步請求+分頁效果

    Vue form 表單提交+ajax異步請求+分頁效果

    這篇文章主要介紹了Vue form 表單提交+ajax異步請求+分頁效果,需要的朋友可以參考下
    2017-04-04
  • vue 中引用gojs繪制E-R圖的方法示例

    vue 中引用gojs繪制E-R圖的方法示例

    這篇文章主要介紹了vue 中引用gojs繪制E-R圖的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • vue項(xiàng)目base64加解密使用方式以及解密亂碼

    vue項(xiàng)目base64加解密使用方式以及解密亂碼

    這篇文章主要介紹了vue項(xiàng)目base64加解密使用方式以及解密亂碼問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • 基于vue實(shí)現(xiàn)pdf預(yù)覽功能

    基于vue實(shí)現(xiàn)pdf預(yù)覽功能

    隨著互聯(lián)網(wǎng)的發(fā)展,PDF?文件在信息交流和文檔分享中起著重要的作用,通過在?Vue?組件中實(shí)現(xiàn)?PDF?預(yù)覽功能,我們可以為用戶提供便捷的內(nèi)容閱讀體驗(yàn),下面我們就來看看具體實(shí)現(xiàn)方法吧
    2023-08-08
  • 一文詳解vue3項(xiàng)目實(shí)戰(zhàn)中的接口調(diào)用

    一文詳解vue3項(xiàng)目實(shí)戰(zhàn)中的接口調(diào)用

    在企業(yè)開發(fā)過程中,往往有著明確的前后端的分工,前端負(fù)責(zé)接收、使用接口,后端負(fù)責(zé)編寫、處理接口,下面這篇文章主要給大家介紹了關(guān)于vue3項(xiàng)目實(shí)戰(zhàn)中的接口調(diào)用的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • Vue引入并使用Element組件庫的兩種方式小結(jié)

    Vue引入并使用Element組件庫的兩種方式小結(jié)

    本文主要介紹了Vue引入并使用Element組件庫的兩種方式小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • vue+el-table實(shí)現(xiàn)合并單元格

    vue+el-table實(shí)現(xiàn)合并單元格

    這篇文章主要為大家詳細(xì)介紹了vue+el-table實(shí)現(xiàn)合并單元格,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09

最新評論

莆田市| 山西省| 宁安市| 于田县| 龙门县| 永嘉县| 广德县| 靖边县| 鱼台县| 都江堰市| 双城市| 长海县| 赣州市| 信宜市| 红安县| 凤台县| 双流县| 雷州市| 青冈县| 新营市| 博野县| 甘洛县| 临江市| 平安县| 定结县| 江北区| 三亚市| 东丽区| 玉门市| 安化县| 皋兰县| 阳春市| 南安市| 南溪县| 忻州市| 普宁市| 绿春县| 沁源县| 铜鼓县| 平原县| 江孜县|