vue項(xiàng)目實(shí)現(xiàn)背景顏色以及下劃線從左到右漸變動畫效果
vue項(xiàng)目:背景顏色、下劃線從左到右漸變動畫效果
產(chǎn)品提了一個需求,讓我寫一個阿里云的切換動畫效果。
本來我很不情愿的,但是他說ui妹子下班請我吃飯,我就勉為其難的答應(yīng)了。
先來看看阿里云的效果

鼠標(biāo)放上去的時候切換table,下面的線條有過渡效果。這個莎x產(chǎn)品還非說改成點(diǎn)擊效果。ctm的。
再來看看我的demo效果

話不多說上代碼
<!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>Document</title>
</head>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<style>
#bottom {
width: 63px;
margin-top: 5px;
margin-left: 17px;
position: absolute;
background: linear-gradient(to right, #f3edea, #f5b587, #ff6a00);
padding-bottom: 3px;
transform: scaleX(0);
transform-origin: left;
transition: transform .15s ease-in-out;
}
.cnm {
transform: scaleX(1) !important;
}
.text {
background-image: -webkit-linear-gradient(left, #f8e9de, #f5b587, #ff6a00);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-weight: 800;
}
/* ------------------以上為主要代碼控制動畫--------------------------- */
p {
margin: 0;
padding: 0;
}
.box1 {
width: 100px;
margin: 20px 0;
text-align: center;
}
section {
width: 400px;
display: flex;
justify-content: center;
border: 1px dashed #ff6a00;
}
.box2 {
width: 95%;
text-align: center;
font-size: 30px;
font-weight: 800;
line-height: 266px;
}
</style>
<body>
<div id='app'>
<section>
<div>
<div class="box1" v-for="(item,index) in list" :key="index" @click="handleClick(index)">
<p :class="{'text':actived==index}">{{item.name}}</p>
<div :class="{'cnm':actived==index}" id="bottom"></div>
</div>
</div>
<div class="box2" v-show="actived==index?true:false" v-for="(item,index) in 6" :key="index">{{index+1}}
</div>
</section>
</div>
<script>
var vm = new Vue({
el: '#app',
data: {
list: [
{
name: '移動云 >',
id: 0
},
{
name: '華為云 >',
id: 1
},
{
name: '阿里云 >',
id: 2
},
{
name: '騰訊云 >',
id: 3
},
{
name: '百度云 >',
id: 4
}, {
name: '京東云 >',
id: 5
}
],
actived: 0
},
methods: {
handleClick(index) {
this.actived = index
}
}
})
</script>
</body>
</html>
背景顏色自己改改樣式吧!
總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue組件屬性(props)及私有數(shù)據(jù)data解析
這篇文章主要介紹了vue組件屬性(props)及私有數(shù)據(jù)data解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10
Vue導(dǎo)出頁面為PDF格式的實(shí)現(xiàn)思路
這篇文章主要介紹了Vue導(dǎo)出頁面為PDF格式的實(shí)現(xiàn)思路,其實(shí)思路也很簡單,就是將頁面轉(zhuǎn)換成圖片格式.然后通過圖片的base64碼.生成PDF..感興趣的朋友跟隨腳本之家小編一起看看吧2018-07-07
Vue動態(tài)組件和keep-alive組件實(shí)例詳解
動態(tài)組件指的是動態(tài)切換組件的顯示與隱藏,下面這篇文章主要給大家介紹了關(guān)于Vue動態(tài)組件和keep-alive組件的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-05-05
Vue中使用vue-i18插件實(shí)現(xiàn)多語言切換功能
在基于vue-cli項(xiàng)目開發(fā)過程中,多語言切換功能可使用vue-i18插件,這篇文章分步驟給大家介紹了Vue中使用vue-i18插件實(shí)現(xiàn)多語言切換功能,感興趣的朋友一起看看吧2018-04-04
vue3?HighCharts自定義封裝之徑向條形圖的實(shí)戰(zhàn)過程
highcharts是國外知名基于javascript的圖表庫,下面這篇文章主要給大家介紹了關(guān)于vue3?HighCharts自定義封裝之徑向條形圖的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09

