马黑黑 发表于 2024-9-17 07:51

Ancient Voices

<style>
#mydiv { margin: 30px 0 30px calc(50% - 721px); width: 1280px; height: 720px; background: url('https://638183.freep.cn/638183/t24/webp2/acvoices.webp') no-repeat center/cover; box-shadow: 3px 3px 6px #333; z-index: 1; display: grid; place-items: center; position: relative; --rad: 80px; }
#player { position: absolute; left: 100px; top: 60px; width: 100px; height: 100px; background: white; border-radius: 50%; box-shadow: inset 0 0 50px #7cb6a0a0, 0 0 var(--rad) white; cursor: pointer; transition: 0.2s; }
#psvg { position: absolute; width: 500px; height: 500px; filter: drop-shadow(100px 0 10px white) drop-shadow(-100px 0 6px white); transition: 0.75s;}
</style>

<div id="mydiv">
        <audio id="aud" src="https://music.163.com/song/media/outer/url?id=23969998" autoplay loop></audio>
        <img id="psvg" alt="" src="https://638183.freep.cn/638183/web/svg/balls2.svg" />
        <div id="player" title="播放/暂停"></div>       
</div>

<script>
aud.ontimeupdate = () => mydiv.style.setProperty('--rad', Math.random() * 100 + 50 + 'px');
player.onclick = () => aud.paused ? (aud.play(), psvg.style.opacity="1") : (aud.pause(), psvg.style.opacity="0");
</script>

马黑黑 发表于 2024-9-17 07:52

<h2>帖子代码</h2>
<div class="hE"><pre>
&lt;style&gt;
#mydiv { margin: 30px 0 30px calc(50% - 721px); width: 1280px; height: 720px; background: url('https://638183.freep.cn/638183/t24/webp2/acvoices.webp') no-repeat center/cover; box-shadow: 3px 3px 6px #333; z-index: 1; display: grid; place-items: center; position: relative; --rad: 80px; }
#player { position: absolute; left: 100px; top: 60px; width: 100px; height: 100px; background: white; border-radius: 50%; box-shadow: inset 0 0 50px #7cb6a0a0, 0 0 var(--rad) white; cursor: pointer; transition: 0.2s; }
#psvg { position: absolute; width: 500px; height: 500px; filter: drop-shadow(100px 0 10px white) drop-shadow(-100px 0 6px white); transition: 0.75s;}
&lt;/style&gt;

&lt;div id="mydiv"&gt;
        &lt;audio id="aud" src="https://music.163.com/song/media/outer/url?id=23969998" autoplay loop&gt;&lt;/audio&gt;
        &lt;img id="psvg" alt="" src="https://638183.freep.cn/638183/web/svg/balls2.svg" /&gt;
        &lt;div id="player" title="播放/暂停"&gt;&lt;/div&gt;       
&lt;/div&gt;

&lt;script&gt;
aud.ontimeupdate = () =&gt; mydiv.style.setProperty('--rad', Math.random() * 100 + 50 + 'px');
player.onclick = () =&gt; aud.paused ? (aud.play(), psvg.style.opacity="1") : (aud.pause(), psvg.style.opacity="0");
&lt;/script&gt;
</pre></div>

<script>
var sc = document.createElement('script');
sc.chartset = 'utf-8';
sc.src = 'https://638183.freep.cn/638183/web/js2024/helight.js';
document.body.appendChild(sc);
</script>

马黑黑 发表于 2024-9-17 07:59

音乐来自自然音乐大师—Dan Gibson的Shimmer专辑

马黑黑 发表于 2024-9-17 08:13

本帖最后由 马黑黑 于 2024-9-17 08:15 编辑 <br /><br /><p>测试:追加全屏按钮</p>
<script>
var sc = document.createElement('script');
sc.src = 'https://638183.freep.cn/638183/web/js2024/fscreen.js';
sc.charset = 'utf-8';
document.body.appendChild(sc);
sc.onload = () => FS({papa: '#mydiv', scale: , css: 'bottom: 20px; --bg: transparent; --color: white;'});
</script>

梦江南 发表于 2024-9-17 09:37

祝黑黑老师中秋节快乐,阖家幸福安康!

红影 发表于 2024-9-17 10:19

这个聪明,用opacity的变化来暂停svg动态{:4_173:}

红影 发表于 2024-9-17 10:28

svg动图还带两个方向的阴影呢,更漂亮了。
小播是纯代码的月亮,设计得也很漂亮{:4_199:}

红影 发表于 2024-9-17 10:30

背景有珠珠,效果也是散发的珠珠。很有想象的设计。
音乐好听{:4_199:}

马黑黑 发表于 2024-9-17 11:40

红影 发表于 2024-9-17 10:30
背景有珠珠,效果也是散发的珠珠。很有想象的设计。
音乐好听

感谢支持

红影 发表于 2024-9-17 11:43

马黑黑 发表于 2024-9-17 11:40
感谢支持

我是来学习的啊,先支持再使劲学习{:4_173:}

马黑黑 发表于 2024-9-17 11:44

红影 发表于 2024-9-17 10:19
这个聪明,用opacity的变化来暂停svg动态

除了用透明度隐藏,还可以使用 display:

元素.style.display = 'none'; //不可见
元素.style.display = 'inline-block'; //可见

block、inline-block都是可见,block 是块状元素,svg、canvas则属于行内块状元素,span属于 inline 类别的元素。

马黑黑 发表于 2024-9-17 11:45

红影 发表于 2024-9-17 11:43
我是来学习的啊,先支持再使劲学习

{:4_190:}

红影 发表于 2024-9-17 11:59

马黑黑 发表于 2024-9-17 11:44
除了用透明度隐藏,还可以使用 display:

元素.style.display = 'none'; //不可见


能使用的方法还挺多,不管怎么说用这法子来操作动态也挺不错{:4_187:}

红影 发表于 2024-9-17 12:00

马黑黑 发表于 2024-9-17 11:45


谢大咖{:4_187:}

醉美水芙蓉 发表于 2024-9-17 15:39

马黑黑 发表于 2024-9-17 15:58

醉美水芙蓉 发表于 2024-9-17 15:39
欣赏老师带来的精彩!

{:4_190:}

马黑黑 发表于 2024-9-17 16:07

红影 发表于 2024-9-17 11:59
能使用的方法还挺多,不管怎么说用这法子来操作动态也挺不错

看应用场景。如果做播放控制器,这个方法就不合适,需要加入替代的东东。

朵拉 发表于 2024-9-17 22:39

漂亮制作,欣赏学习了{:4_190:}

红影 发表于 2024-9-17 22:57

马黑黑 发表于 2024-9-17 16:07
看应用场景。如果做播放控制器,这个方法就不合适,需要加入替代的东东。

是的,否则播放器就找不到了。

小辣椒 发表于 2024-9-18 20:35

一个比一个漂亮了{:4_178:}
页: [1]
查看完整版本: Ancient Voices