晨光
<style>#tz {
margin: 30px 0 30px calc(50% - 593px);
width: 1024px;
height: 600px;
background: url('https://638183.freep.cn/638183/t24/4/ifgl.jpg') no-repeat center/cover;
box-shadow: 3px 3px 6px #333;
display: grid;
place-items: center;
position: relative;
}
#player {
--size: 120px;
--border: 10px;
position: absolute;;
top: 25%;
width: var(--size);
height: var(--size);
border-radius: 50%;
cursor: pointer;
animation: rot 8s linear infinite var(--state);
}
.infinity {
width: 100%;
height: 100%;
filter: drop-shadow(0 0 10px black);
position: absolute;
}
.infinity::before, .infinity::after {
position: absolute;
content: '';
width: calc(50% - var(--border) * 1.5);
height: calc(50% - var(--border) * 1.5);
border: var(--border) solid teal;
border-radius: 50% 50% 0 50%;
transform-origin: 100% 100%;
}
.infinity::after { transform: rotate(-180deg) translate(var(--border), var(--border)); }
#vid {
position: absolute;
right: 0;
top: 0;
width: 100%;
height: 20%;
object-fit: cover;
pointer-events: none;
mix-blend-mode: hard-light;
-webkit-mask: linear-gradient(red, transparent);
}
@keyframes rot { to { transform: rotate(1turn); } }
</style>
<div id="tz">
<audio id="aud" src="https://music.163.com/song/media/outer/url?id=132675" autoplay loop></audio>
<video id="vid" src="https://bpic.588ku.com/video_listen/588ku_preview/20/11/10/15/34/31/video5faa42876fc28.mp4" autoplay loop muted></video>
<div id="player"></div>
</div>
<script>
var draggable = false, offset = 80, time_delay = 0;
var sc = document.createElement('script');
sc.src = 'https://638183.freep.cn/638183/web/api/fullscreen.js';
sc.charset = 'utf-8';
document.body.appendChild(sc);
sc.onload = () => FS({
papa: '#tz',
css: 'bottom: 20px; --fsBg: transparent; --color: white;',
});
Array(total = 3).fill('').forEach((el,k) => {
el = document.createElement('div');
el.className = 'infinity';
el.style.transform = `rotate(${360 / total * k}deg)`;
player.appendChild(el);
});
aud.onplaying = aud.onpause = () => {
tz.style.setProperty('--state', aud.paused ? 'paused' : 'running');
aud.paused ? vid.pause() : vid.play();
}
player.onclick = () => aud.paused ? aud.play() : aud.pause();
</script>
<h2>帖子代码</h2>
<div class="hE"><pre>
<style>
#tz {
margin: 30px 0 30px calc(50% - 593px);
width: 1024px;
height: 600px;
background: url('https://638183.freep.cn/638183/t24/4/ifgl.jpg') no-repeat center/cover;
box-shadow: 3px 3px 6px #333;
display: grid;
place-items: center;
position: relative;
}
#player {
--size: 120px;
--border: 10px;
position: absolute;;
top: 25%;
width: var(--size);
height: var(--size);
border-radius: 50%;
cursor: pointer;
animation: rot 8s linear infinite var(--state);
}
.infinity {
width: 100%;
height: 100%;
filter: drop-shadow(0 0 10px black);
position: absolute;
}
.infinity::before, .infinity::after {
position: absolute;
content: '';
width: calc(50% - var(--border) * 1.5);
height: calc(50% - var(--border) * 1.5);
border: var(--border) solid teal;
border-radius: 50% 50% 0 50%;
transform-origin: 100% 100%;
}
.infinity::after { transform: rotate(-180deg) translate(var(--border), var(--border)); }
#vid {
position: absolute;
right: 0;
top: 0;
width: 100%;
height: 20%;
object-fit: cover;
pointer-events: none;
mix-blend-mode: hard-light;
-webkit-mask: linear-gradient(red, transparent);
}
@keyframes rot { to { transform: rotate(1turn); } }
</style>
<div id="tz">
<audio id="aud" src="https://music.163.com/song/media/outer/url?id=132675" autoplay loop></audio>
<video id="vid" src="https://bpic.588ku.com/video_listen/588ku_preview/20/11/10/15/34/31/video5faa42876fc28.mp4" autoplay loop muted></video>
<div id="player"></div>
</div>
<script>
var draggable = false, offset = 80, time_delay = 0;
var sc = document.createElement('script');
sc.src = 'https://638183.freep.cn/638183/web/api/fullscreen.js';
sc.charset = 'utf-8';
document.body.appendChild(sc);
sc.onload = () => FS({
papa: '#tz',
css: 'bottom: 20px; --fsBg: transparent; --color: white;',
});
Array(total = 3).fill('').forEach((el,k) => {
el = document.createElement('div');
el.className = 'infinity';
el.style.transform = `rotate(${360 / total * k}deg)`;
player.appendChild(el);
});
aud.onplaying = aud.onpause = () => {
tz.style.setProperty('--state', aud.paused ? 'paused' : 'running');
aud.paused ? vid.pause() : vid.play();
}
player.onclick = () => aud.paused ? aud.play() : aud.pause();
</script>
</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> 欣赏老师漂亮动画 老师的这款播放器拖不劝了。 老师太厉害了,把代码随意做成各式各样的播放器,佩服!{:4_187:} 本帖最后由 彩云归 于 2024-9-8 11:00 编辑
谢谢分享!{:4_199:} 醉美水芙蓉 发表于 2024-9-8 11:34
这个播放器颜色和歌曲都不错!
{:4_191:} 醉美水芙蓉 发表于 2024-9-8 11:33
这个播放器简洁漂亮!黑黑老师花了不少心思的!
这个简单的 世外桃源 发表于 2024-9-8 10:09
欣赏老师漂亮动画
感谢支持 梦江南 发表于 2024-9-8 10:25
老师的这款播放器拖不劝了。
这个没设置为可拖曳 彩云归 发表于 2024-9-8 10:58
谢谢分享!
下午好 也是代码编辑的播放器,今天还复杂了一点,欣赏黑黑的高超代码技术{:4_199:} 这背景图选的真漂亮,颜色多层次,视频效果配的太好了{:4_178:} 小辣椒 发表于 2024-9-8 17:05
也是代码编辑的播放器,今天还复杂了一点,欣赏黑黑的高超代码技术
不算复杂吧?就几个无穷大图案堆叠在一起 马黑黑 发表于 2024-9-8 17:53
不算复杂吧?就几个无穷大图案堆叠在一起
看看好像套用也是会速度完成的,但今天我吃不消玩了 小辣椒 发表于 2024-9-8 17:54
看看好像套用也是会速度完成的,但今天我吃不消玩了
玩不了改天再玩 var draggable = false, offset = 30, time_delay = 0;这句在这里是不是没起到作用。 代码写出水滴形状,
通过旋转变成无穷大,
再叠加三层,
通过阴景设置形成层次感,立体的很漂亮