|
|

楼主 |
发表于 2024-2-16 08:28
|
显示全部楼层
代码
- <style>
- #papa { margin: 0 0 0 calc(50% - 593px); position: relative; padding: 0; box-sizing: content-box; width: 1024px; height: 640px; background: url('https://638183.freep.cn/638183/t24/1/20u.jpg') no-repeat center/cover; box-shadow: 2px 4px 8px black; border: 10px groove lightblue; overflow: hidden; z-index: 1; }
- #papa::before, #papa::after { position: absolute; content: url('https://638183.freep.cn/638183/t22/gif/goldfish.gif'); left: 20%; top: 70%; mix-blend-mode: multiply; }
- #papa::after { transform: translate(-100px,0) scale(-1,1); }
- #player, #pclone { margin: 20px auto; position: relative; width: 150px; height: 150px; animation: rot 6s linear infinite var(--state); cursor: pointer; }
- #pclone { filter: blur(1px) opacity(.5); }
- ye-zi { position: absolute; left: calc(50% - 0.5 * var(--ww)); top: 0; width: var(--ww); height: 75px; border-radius: 100%; background: radial-gradient(green, deeppink, green); transform-origin: 50% 100%; transform: rotate(var(--deg)); }
- @keyframes rot { to { transform: rotate(-360deg); } }
- </style>
- <div id="papa">
- <audio id="aud" src="https://music.163.com/song/media/outer/url?id=5267406" autoplay loop></audio>
- <div id="player"></div>
- <div id="pclone"></div>
- </div>
- <script>
- var all = 5;
- Array.from({length: all}).forEach((item,key) => {
- item = document.createElement('ye-zi');
- item.style.cssText += `--ww: 20px; --deg: ${360 / all * key}deg;`;
- player.appendChild(item);
- });
- pclone.innerHTML = player.innerHTML;
- var mState = () => papa.style.setProperty('--state', aud.paused ? 'paused' :'running');
- aud.addEventListener('playing', mState);
- aud.addEventListener('pause', mState);
- player.onclick = pclone.onclick = () => aud.paused ? aud.play() : aud.pause();
- </script>
复制代码
|
|