js和CSS3實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果
來(lái)源:懂視網(wǎng)
責(zé)編:小OO
時(shí)間:2020-11-27 18:48:14
js和CSS3實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果
我們經(jīng)常會(huì)在游戲里看到一些幾張卡牌左右切換的效果,中間的一張最突出醒目,向左或向右滑動(dòng)可切換到另一張,今天我們就用CSS3來(lái)實(shí)現(xiàn)下這種效果。我們先來(lái)看個(gè)demo,具體的樣式各位可以自己調(diào)整。(PC下可點(diǎn)擊按鈕切換,移動(dòng)端可左右滑動(dòng)切換)。從效果上可以看到,這5個(gè)p可以左右的切換,每次切換時(shí)總會(huì)有一個(gè)在中間顯眼的位置進(jìn)行展示。在切換時(shí),看起來(lái)是p進(jìn)行了移動(dòng),進(jìn)行了DOM的增刪操作。但是如果審查下元素,就能看到,DOM元素沒(méi)有變換位置,它依然在那個(gè)位置,我們只是切換了每個(gè)元素上的class,于是頁(yè)面上的位置看起來(lái)是發(fā)生了變化。其實(shí)原理就是這樣的: 不進(jìn)行DOM的增刪,為每個(gè)位置上的p都寫(xiě)上特定的樣式,每個(gè)p都進(jìn)行絕對(duì)定位,然后進(jìn)行樣式的輪播。每次切換都有個(gè)0.6s過(guò)渡過(guò)程。
導(dǎo)讀我們經(jīng)常會(huì)在游戲里看到一些幾張卡牌左右切換的效果,中間的一張最突出醒目,向左或向右滑動(dòng)可切換到另一張,今天我們就用CSS3來(lái)實(shí)現(xiàn)下這種效果。我們先來(lái)看個(gè)demo,具體的樣式各位可以自己調(diào)整。(PC下可點(diǎn)擊按鈕切換,移動(dòng)端可左右滑動(dòng)切換)。從效果上可以看到,這5個(gè)p可以左右的切換,每次切換時(shí)總會(huì)有一個(gè)在中間顯眼的位置進(jìn)行展示。在切換時(shí),看起來(lái)是p進(jìn)行了移動(dòng),進(jìn)行了DOM的增刪操作。但是如果審查下元素,就能看到,DOM元素沒(méi)有變換位置,它依然在那個(gè)位置,我們只是切換了每個(gè)元素上的class,于是頁(yè)面上的位置看起來(lái)是發(fā)生了變化。其實(shí)原理就是這樣的: 不進(jìn)行DOM的增刪,為每個(gè)位置上的p都寫(xiě)上特定的樣式,每個(gè)p都進(jìn)行絕對(duì)定位,然后進(jìn)行樣式的輪播。每次切換都有個(gè)0.6s過(guò)渡過(guò)程。
這篇文章主要為大家詳細(xì)介紹了js CSS3實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
我們經(jīng)常會(huì)在游戲里看到一些幾張卡牌左右切換的效果,中間的一張最突出醒目,向左或向右滑動(dòng)可切換到另一張,今天我們就用CSS3來(lái)實(shí)現(xiàn)下這種效果。
我們先來(lái)看個(gè)demo,具體的樣式各位可以自己調(diào)整:

(PC下可點(diǎn)擊按鈕切換,移動(dòng)端可左右滑動(dòng)切換)
從效果上我們可以看到,這5個(gè)p可以左右的切換,每次切換時(shí)總會(huì)有一個(gè)在中間顯眼的位置進(jìn)行展示。在切換時(shí),看起來(lái)是p進(jìn)行了移動(dòng),進(jìn)行了DOM的增刪操作。但是如果審查下元素,就能看到,DOM元素沒(méi)有變換位置,它依然在那個(gè)位置,我們只是切換了每個(gè)元素上的class,于是頁(yè)面上的位置看起來(lái)是發(fā)生了變化。
其實(shí)原理就是這樣的: 不進(jìn)行DOM的增刪,為每個(gè)位置上的p都寫(xiě)上特定的樣式,每個(gè)p都進(jìn)行絕對(duì)定位,然后進(jìn)行樣式的輪播。 每次切換都有個(gè)0.6s過(guò)渡過(guò)程:
-webkit-transition: all 0.6s;
transition: all 0.6s;
比如從左往右的class分別為:item_0, item_1, item_cur, item_3, item_4,每個(gè)class都是當(dāng)前所在p的定位,向左滑動(dòng)時(shí),右邊的p會(huì)切換到中間,這樣class從左往右就變成了item_1, item_cur, item_3, item_4, item_0。
var egg_change = function(type){
var $demo = $('.demo'),
index = parseInt( $demo.attr('index_cur')||2 ),
$item = $('.demo .item'),
len = $item.length;
if( type=='left' ){
index = (index+1)%len;
}else{
index = (index-1+len)%len;
}
$demo.attr('index_cur', index);
$item.removeClass('item_0 item_1 item_3 item_4 item_cur');
$item.eq( (index-2+len)%len ).addClass('item_0');
$item.eq( (index-1+len)%len ).addClass('item_1');
$item.eq(index).addClass('item_cur');
$item.eq( (index+1)%len ).addClass('item_3');
$item.eq( (index+2)%len ).addClass('item_4');
}
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。
js和CSS3實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果
我們經(jīng)常會(huì)在游戲里看到一些幾張卡牌左右切換的效果,中間的一張最突出醒目,向左或向右滑動(dòng)可切換到另一張,今天我們就用CSS3來(lái)實(shí)現(xiàn)下這種效果。我們先來(lái)看個(gè)demo,具體的樣式各位可以自己調(diào)整。(PC下可點(diǎn)擊按鈕切換,移動(dòng)端可左右滑動(dòng)切換)。從效果上可以看到,這5個(gè)p可以左右的切換,每次切換時(shí)總會(huì)有一個(gè)在中間顯眼的位置進(jìn)行展示。在切換時(shí),看起來(lái)是p進(jìn)行了移動(dòng),進(jìn)行了DOM的增刪操作。但是如果審查下元素,就能看到,DOM元素沒(méi)有變換位置,它依然在那個(gè)位置,我們只是切換了每個(gè)元素上的class,于是頁(yè)面上的位置看起來(lái)是發(fā)生了變化。其實(shí)原理就是這樣的: 不進(jìn)行DOM的增刪,為每個(gè)位置上的p都寫(xiě)上特定的樣式,每個(gè)p都進(jìn)行絕對(duì)定位,然后進(jìn)行樣式的輪播。每次切換都有個(gè)0.6s過(guò)渡過(guò)程。
标签:福寿螺时间:2024-09-11 09:24:02
标签:深中通道通车时间:2024-07-01 11:16:29
标签:肺炎养臭水时间:2024-06-06 10:02:27