gpt4 book ai didi

jQuery/CSS3 动画阴影效果

转载 作者:技术小花猫 更新时间:2023-10-29 11:08:45 27 4
gpt4 key购买 nike

所以这个问题可能会被否决,但我认为有人可能会提供帮助。

我想要的效果是蓝色方 block 像气球一样上下盘旋,随着方 block 的上下移动,阴影在其下方不断扩大和缩小。

enter image description here

关于如何对此进行编程的任何想法,或者是否有人知道可以完成的教程/插件?

最佳答案

您可以使用 jQuery 或 CSS3 来完成,您来电,我会向您展示:

CSS3 demo

CSS3:

#box{
position:absolute;
top:100px;
left:0;
width:200px;
height:200px;
background:#6CB8E9;
-moz-animation:jump 2s infinite ease-in-out;
-webkit-animation:jump 2s infinite ease-in-out;
}

#shadow{
position:absolute;
top:290px;
height:20px;
border-radius:30px;
left: -200px;
background:transparent;
width:200px;
box-shadow:200px 0 10px 2px rgba(0,0,0,0.4);
margin-left:0;
opacity: 1;
-moz-animation:shadowSize 2s infinite ease-in-out;
-webkit-animation:shadowSize 2s infinite ease-in-out;
}

@-moz-keyframes jump {
0% { top:100px;}
50% { top:25px;}
100% { top:100px;}
}
@-webkit-keyframes jump {
0% { top:100px;}
50% { top:25px;}
100% { top:100px;}
}

@-moz-keyframes shadowSize {
0% { width:200px; margin-left:0px; opacity:1; box-shadow:200px 0 10px rgba(0,0,0,0.7);}
50% { width:150px; margin-left:25px;opacity:0.3; box-shadow:200px 0 30px rgba(0,0,0,0.3);}
100% { width:200px; margin-left:0px; opacity:1; box-shadow:200px 0 10px rgba(0,0,0,0.7);}
}
@-webkit-keyframes shadowSize {
0% { width:200px; margin-left:0px; opacity:1; box-shadow:200px 0 10px rgba(0,0,0,0.7);}
50% { width:150px; margin-left:25px;opacity:0.3; box-shadow:200px 0 30px rgba(0,0,0,0.3);}
100% { width:200px; margin-left:0px; opacity:1; box-shadow:200px 0 10px rgba(0,0,0,0.7);}
}

现在,我们亲爱的 jQ...只需使用 .png 图像作为阴影,而不是我丑陋的 box-shadow :)

jQuery demo

var li = 1; // a LoopIterations variable

function loop(){

li = ++li%2; // reset evenly to '0' // results in 0, 1, 0, 1, 0, ....

$('#shadow').animate({
width: !li ? 150:200 ,
marginLeft: !li ? 25:0 ,
opacity: !li ? 0.3:1
}, 2000);

$('#box').animate({
top: !li ? 25 : 100
},2000, loop); // THIS 'loop' callback will recall the loop() function creating ... a loop :D

}

loop(); // start loop

解释:由于 % (Modulo运算符)。
0 在 Javascript 中可以表示为 false,非常适合使用三元运算符来检查两个 bool 值,例如:[真假陈述] ? [如果为真就做这个] : [如果为假就做那个] ;

!li ? 150:200 表示如果 !li (= 0 = is false) 使用 200 否则使用 150

另外:

<div id="box"></div>
<div id="shadow"></div>

和 CSS:

#box{
position:absolute;
top:100px;
width:200px;
height:200px;
background:#6CB8E9;
}

#shadow{
position:absolute;
top:310px;
height:1px;
background:rgba(0,0,0,0.26);
width:200px;
box-shadow:0 0 14px 2px #000;
margin-left:0;
opacity: 1;
}

关于jQuery/CSS3 动画阴影效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14313863/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com