动画设计
本帖最后由 亚伦影音工作室 于 2025-5-14 22:08 编辑 <br /><br /><style>#papa {margin: 10px -300px;
width: 1286px;
height: 720px;
background:#333 url('https://pic1.imgdb.cn/item/6824a1fc58cb8da5c8f1b5a2.jpg')0 0/100%;
box-shadow: 0px 0px 0px 2px #cccccc, 0px 0px 0px 8px #880000;
position: relative;overflow: hidden;
z-index: 12345;--state: paused;
}
.lrc { font-family:华文隶书;filter:drop-shadow(#ffffff 1px 0 0)drop-shadow(#ffffff 0 1px 0)drop-shadow(#ffffff -1px 0 0) drop-shadow(#ffffff 0 -1px0);position: absolute;z-index: 5;
width:100%;
height:180px;color:#ff0000;
top: 620px;
left: 20px;
text-align:center;
pointer-events: none;
overflow:hidden;
}
#img_border{display:inline-block;width:120px;height:120px;position: absolute;margin: 580px 20px ;
border:2px solid #cccccc;border-radius:50%;animation:rotating 10s linear infinite var(--state); z-index: 100;}
@keyframes rotating{0% {transform: rotateX(45deg) rotateY(-20deg) rotateZ(0deg);}
100% {transform: rotateX(45deg) rotateY(-20deg) rotateZ(360deg);}
}
#mpicd { position: absolute;
top: 0px;
left: 0px;
width: 100%;z-index: 1;
height: 100%;background: url('https://pic1.imgdb.cn/item/67f11e350ba3d5a1d7edcf6e.png')0 0/40%;
animation: flyd 30s linear infinite var(--state);mix-blend-mode: lighten;
opacity: 1;
}
#mpiccd { position: absolute;
top: 0px;
left: 0px;
width: 100%;z-index: 1;
height:100%;background: url('https://pic1.imgdb.cn/item/67f11e350ba3d5a1d7edcf6e.png')0 0/40%;
animation: totd 30s linear infinite var(--state);mix-blend-mode: lighten;
opacity: 1;
}
@keyframes flyd {0%{transform:translate(2%,0%)scale(0.5)perspective(255px) rotateY(-60deg);
background-position: -100% -200%;opacity: 1;
}
100%{opacity: 1;
background-position: 600% 200%;
}
}
@keyframes totd { 0%{background-position: 100% 200%;opacity: 1;
transform:translate(-2%,0%)scale(0.5)perspective(255px) rotateY(60deg);
}
100%{opacity: 1;
background-position: -600% -200%;
}
}
</style>
<div id="papa">
<divid="mpicd"></div>
<divid="mpiccd"></div>
<div ><img id="img_border"src="http://image.hnol.net/c/2022-01/08/11/20220108115931931-5769293.jpg" ></div>
<div class="lrc"> <div class="words">亚伦影音</div></div>
</div>
<audio src="https://upfile.mp3.wf/view.php/01675b82b74baef51dd657222fbaeb4c.m4a" loop autoplay id="aud"></audio>
<textarea id="txt" style="display: none;">手心有你
歌手:石大侠
作词:马健涛
作曲:马健涛
编曲:马健涛
让我留在你身边多一天
让我爱你每天多一点
让我今生与你做伴
让我亲吻你的脸蛋
我在梦到你的夜里流泪
双手捧着你的相片
你是我放不下的人
我要把你捧在我手心
谢谢你一直的包容我
没有丢下我
谢谢你一直的爱着我
原谅我的过错
感谢上苍把你赐给我
温暖了我心窝
当我哭泣难过的时候
你会紧紧抱着我
让我留在你身边多一天
让我爱你每天多一点
让我今生与你做伴
让我亲吻你的脸蛋
我在梦到你的夜里流泪
双手捧着你的相片
你是我放不下的人
我要把你捧在我手心
LRC编辑:小辣椒
谢谢你一直的包容我
没有丢下我
谢谢你一直的爱着我
原谅我的过错
感谢上苍把你赐给我
温暖了我心窝
当我哭泣难过的时候
你会紧紧抱着我
让我留在你身边多一天
让我爱你每天多一点
让我今生与你做伴
让我亲吻你的脸蛋
我在梦到你的夜里流泪
双手捧着你的相片
你是我放不下的人
我要把你捧在我手心
让我留在你身边多一天
让我爱你每天多一点
让我今生与你做伴
让我亲吻你的脸蛋
我在梦到你的夜里流泪
双手捧着你的相片
你是我放不下的人
我要把你捧在我手心
我要把你捧在我手心
谢谢欣赏
</textarea>
<script>
var num = 0;
var myMusic = document.getElementById("aud"); //通过ID 获取audio
var words = document.getElementsByClassName("words");
var mark = true; //布尔值 true真 false假
var txt = document.getElementById("txt");
var lrc = txt.value.split("[");
// console.log(txt.value);
var html = "";
//循环遍历 出歌词
for (var i = 0; i < lrc.length; i++) {
var lrcArrly = lrc.split("]");
var time = lrcArrly.split(".");
//console.log(lrc) //分割时分,秒
var times = time.split(":");
//console.log(times) //分割时,分
var ms = times * 60 + times * 1; //分钟转换为秒× 60 times 是秒数,×1 表示 string转换为int类型
// console.log(ms);
// console.log(lrcArrly); // 歌词
if (lrcArrly) { //判断是否存在 存在进入
html += "<pid=" + ms + "title=[" + lrc + ">" + lrcArrly + "</P>";
}
words.innerHTML = html;
// console.log(words.innerHTML);
};
//获取所有的p标签
var Ps = document.getElementsByTagName("p");
//aidio监听播放进度 发生变化,就触发函数
aud.addEventListener("timeupdate", function() {
// 输出时间变换:console.log(this.currentTime); 1.300000
console.log(this.currentTime);
var currentTimes = parseInt(this.currentTime); //取整
console.log(currentTimes);
if (document.getElementById(currentTimes)) {
//当前的 该颜色,非当前就改为以前颜色
for (var i = 0; i < Ps.length; i++) {
Ps.style.color = "";
Ps.style.fontSize = "0";
}
document.getElementById(currentTimes).style.color = "#FF0000";
document.getElementById(currentTimes).style.fontSize = "40px";
if (Ps.id == currentTimes) {
words.style.top = 0 * num + "px";
if (num >= 58) {
num = 0;
}
num++;
}
}
});
img_border.onclick = () => aud.paused ?(aud.play()):(aud.pause());
mState = () => papa.style.setProperty('--state', aud.paused ? 'paused' : 'running');
aud.onplaying = aud.onpause = () => mState();
</script>
动画设计,是什么意思? 建议亚纶把你的构思顺便写一下 哦,才发现你是发的黑黑教程专版 这个动图设计真漂亮,还是两种不同的图图呢,很有立体感。{:4_187:} 欣赏亚伦老师好帖{:4_199:}
页:
[1]