归来
本帖最后由 马黑黑 于 2023-5-10 07:57 编辑 <br /><br /><style>#papa {
margin: 0 0 0 calc(50% - 593px);
width: 1024px;
height: 640px;
background: url('https://638183.freep.cn/638183/t23/1/gvld.jpeg') no-repeat center/cover;
box-shadow: 0 0 8px #000;
position: relative;
z-index: 1;
--state: paused;
}
css-doodle { position: absolute; }
</style>
<div id="papa">
<css-doodle grid="6" id="mplayer">
:doodle {
@size: 200px;
@shape: circle;
left: 10px;
top: 10px;
cursor: pointer;
z-index: 2;
animation: rot 6s infinite linear forwards var(--state);
}
border: @r(2px, 10px) solid hsla(calc(100 * @i()), 80%, 60%, @r(.6));
border-radius: 50%;
transform: scale(@r(6, 15));
@keyframes rot { to { transform: rotate(360deg); } }
</css-doodle>
<css-doodle grid="20">
:doodle {
@size: 1024px 640px;
}
position: absolute;
left: @r(100)%;
top: -20%;
:after {
position: absolute;
content: "@p(✿,❁,❀,🌺,💮)";
color: snow;
font-size: @r(12, 40)px;
}
animation: fall @r(8,20)s @r(-6, 6)s infinite var(--state);
@keyframes fall {
0% { top: -20%; transform: rotate(0deg); }
100% {top: 120%; transform: rotate(360deg); }
}
</css-doodle>
<audio id="aud" src="https://music.163.com/song/media/outer/url?id=544954253" autoplay loop></audio>
</div>
<script>
(function(){
let script = document.createElement('script');
script.src = 'https://unpkg.com/css-doodle@0.34.9/css-doodle.min.js';
document.head.appendChild(script);
let mState = () => papa.style.setProperty('--state', aud.paused ? 'paused' : 'running');
aud.addEventListener('play', mState, false);
aud.addEventListener('pause', mState, false);
mplayer.onclick = () => aud.paused ? aud.play() : aud.pause();
})();
</script>
<style>
.papa {}
.papa > p {margin: 8px 0;}
.mama {height: fit-content; display: grid; grid-template-columns: 50px auto; grid-template-rows: 1fr; padding: 0; margin: 20px 0; background: #f9f9f9; box-shadow: 0 0 2px #000; position: relative;}
.hCode, .hLineNum {margin: 0;padding: 10px 4px;width: 100%;box-sizing: border-box;font-size: 14px;line-height: 16px;}
.hCode {overflow-x: auto; tab-size: 3;}
.hLineNum {border-right: 1px solid #ccc;text-align: right;color: gray;user-select: none;}
.stage {display: grid; place-items: center;}
</style>
<div class="papa">
<p>帖子代码:</p>
<div class="mama">
<pre class="hLineNum"></pre>
<pre class="hCode">
<style>
#papa {
margin: auto;
width: 1024px;
height: 640px;
background: url('https://638183.freep.cn/638183/t23/1/gvld.jpeg') no-repeat center/cover;
box-shadow: 0 0 8px #000;
position: relative;
z-index: 1;
--state: paused;
}
css-doodle { position: absolute; }
</style>
<div id="papa">
<css-doodle grid="6" id="mplayer">
:doodle {
@size: 200px;
@shape: circle;
left: 10px;
top: 10px;
cursor: pointer;
z-index: 2;
animation: rot 6s infinite linear forwards var(--state);
}
border: @r(2px, 10px) solid hsla(calc(100 * @i()), 80%, 60%, @r(.6));
border-radius: 50%;
transform: scale(@r(6, 15));
@keyframes rot { to { transform: rotate(360deg); } }
</css-doodle>
<css-doodle grid="20">
:doodle {
@size: 1024px 640px;
}
position: absolute;
left: @r(100)%;
top: -20%;
:after {
position: absolute;
content: "@p(✿,❁,❀,🌺,💮)";
color: snow;
font-size: @r(12, 40)px;
}
animation: fall @r(8,20)s @r(-6, 6)s infinite var(--state);
@keyframes fall {
0% { top: -20%; transform: rotate(0deg); }
100% {top: 120%; transform: rotate(360deg); }
}
</css-doodle>
<audio id="aud" src="https://music.163.com/song/media/outer/url?id=544954253" autoplay loop></audio>
</div>
<script>
let script = document.createElement('script');
script.src = 'https://unpkg.com/css-doodle@0.34.9/css-doodle.min.js';
document.head.appendChild(script);
let mState = () => papa.style.setProperty('--state', aud.paused ? 'paused' : 'running');
aud.addEventListener('play', mState, false);
aud.addEventListener('pause', mState, false);
mplayer.onclick = () => aud.paused ? aud.play() : aud.pause();
</script></pre>
</div>
</div>
<script>
let hCodes = document.querySelectorAll('.hCode'),
hLineNums = document.querySelectorAll('.hLineNum');
hCodes.forEach((item,key) => {
let lines = hCodes.innerText.trim().split('\n').length;
let str = '';
for(i = 0; i < lines; i ++) {
str += i + 1 + '\n';
}
hLineNums.innerText = str;
});
</script>
欣赏,学习 这么漂亮哇 为是楼兰菇凉撒的花雨么{:4_189:} 觉得吧,左上那个圆球播放器和漫天的花雨不是太和谐。 那个圆球也是代码做的啊,这个还是头一次看到。
content: "@p(✿,❁,❀,🌺,💮)"; 这个居然还能选带颜色的图标,不知道这些图标都哪找到。{:4_187:} 这些花瓣真多,撒在荒城绵延的历史中。黑黑的制作漂亮{:4_199:} 目不暇接 梦油 发表于 2023-5-10 16:31
目不暇接
感谢支持 欣赏黑黑的新产品{:4_187:} 漂亮!学习!{:4_187:} 焱鑫磊 发表于 2023-5-10 19:05
漂亮!学习!
{:4_191:} 问好黑黑老师!欣赏学习了!{:4_190:} 亦是金 发表于 2023-5-10 19:29
问好黑黑老师!欣赏学习了!
晚上好 感谢老师的代码分享,欣赏问好!{:4_187:} 梦缘 发表于 2023-5-10 20:50
感谢老师的代码分享,欣赏问好!
晚上好 看看,彩球漂亮 南无月 发表于 2023-5-10 21:55
看看,彩球漂亮
晚上嚎
页:
[1]
2