帖子代码
<style>
#mydiv {
margin: 30px 0 30px calc(50% - 593px);
width: 1024px;
height: 576px;
background: tan;
box-shadow: 3px 3px 8px gray;
overflow: hidden;
position: relative;
}
#mydiv::before {
position:absolute;
content: '';
inset: 0;
background: url('https://638183.freep.cn/638183/t24/4/drift.jpg') no-repeat center/cover;
-webkit-mask: radial-gradient(circle at center, transparent 0.2px, red 1px) repeat center/var(--size) var(--size);
transition: .72s;
--size: 3px;
}
#mydiv:hover::before { --size: 32px; transform: scale(115%) rotate(2deg); }
#player {
--inset: gray;
position: absolute;
left: calc(50% - 60px);
top: 40px;
width: 120px;
height: 120px;
border-radius: 50%;
background: url('https://638183.freep.cn/638183/small/rose.jpg') no-repeat center/cover;
mix-blend-mode: multiply;
box-shadow: inset 0 0 30px var(--inset);
cursor: pointer;
animation: rot 8s linear infinite var(--state);
}
#player:hover { --inset: plum; }
@keyframes rot { to { transform: rotate(360deg); } }
</style>
<div id="mydiv">
<audio id="aud" src="https://music.163.com/song/media/outer/url?id=1929364487" autoplay loop></audio>
<div id="player" title="播放/暂停"></div>
</div>
<script>
aud.oncanplay = aud.onplaying = aud.onpause = () => player.style.setProperty('--state', aud.paused ? 'paused' : 'running');
player.onclick = () => aud.paused ? aud.play() : aud.pause();
</script>
|