马黑黑 发表于 2022-9-25 07:50

广袤天地

本帖最后由 马黑黑 于 2022-9-25 07:51 编辑 <br /><br /><style>
        #papa { left: -214px; width: 1024px; height: 640px; background: url('/data/attachment/forum/202209/25/072505jvpqdny33qoxvhoo.jpg') no-repeat center/cover; box-shadow: 3px 3px 20px #000; box-shadow: 3px 3px 20px #000; display: grid; place-items: center; overflow: hidden; position: relative; z-index: 1; }
        #mplayer { position: absolute; right: 40px; bottom: 0; width: 300px; height: 80px; user-select: none; display: grid; place-items: center; cursor: pointer; }
        #mplayer:hover #btnwrap, #mplayer:hover #prog { transform: translateY(var(--yy)); }
        #mplayer:hover #btnwrap { background: linear-gradient(to top right, teal, black); border-radius: 50%; opacity: .55; }
        #btnwrap, #prog { position: absolute; display: grid; place-items: center; transition: .5s; }
        #btnwrap { --yy: -15px; width: 40px; height: 40px; transform: rotate(45deg); border: 1px solid tan; border-radius: 6px; opacity: 0; }
        #btnplay { width: 20px; height: 20px; transform: translateX(3px); background: #eee; clip-path: polygon(0 0, 0% 100%, 100% 50%); }
        #btnpause { width: 2px; height: 20px; border-style: solid; border-width: 0px 4px; border-color: transparent #eee; display: none; }
        #prog { --yy: 20px; width: 300px; height: 16px; border-radius: 10px; background: linear-gradient(90deg, teal, black 100%, transparent 0); border: 1px solid teal; font: normal 14px / 16px sans-serif; color: #ccc; text-shadow: 1px 1px 1px #000; opacity: .65; }
        #lrc { position: absolute; top: 20px; font: 900 2.4em 'FangSong',sans-serif; color: transparent; background: linear-gradient(-90deg, skyblue, snow) 0 0 / 200% 200%; filter: drop-shadow(2px 2px 4px #000); -webkit-background-clip: text; }
        #mpic {position: absolute; transform: rotateY(180deg); left: 0; top: 0; width: 60px; offset-distance: 0; offset-path: path("M 0 0 Q 300 90, 512 100 T 1024 30"); animation: move 18s linear infinite;}
        @keyframes bgMove1 { to { background-position: -100% 0; } }
        @keyframes bgMove2 { to { background-position: -100% 0; } }
        @keyframes move { to { offset-distance: 100%; } }

</style>

<div id="papa">
        <img id="mpic" alt="" src="/data/attachment/forum/202209/25/072652ckuqwlat7wqk6o6z.gif" />
        <span id="lrc" data-text="花潮lrc在线">花潮lrc在线</span>
        <div id="mplayer">
                <div id="btnwrap"><span id="btnplay"></span><span id="btnpause"></span></div>
                <div id="prog">00:00 | 00:00</div>
        </div>
</div>

<script>
let mKey = 0, mFlag = true, aud = new Audio();
let lrcAr = [,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,];
aud.src = 'https://music.163.com/song/media/outer/url?id=1978686514.mp3';
aud.autoplay = true;
aud.loop = true;
btnwrap.onclick = () => aud.paused ? aud.play() : aud.pause();
prog.onclick = (e) => aud.currentTime = aud.duration * e.offsetX / prog.offsetWidth;
aud.addEventListener('pause', () => mState());
aud.addEventListener('play', () => mState());
aud.addEventListener('seeked', () => calcKey());
aud.addEventListener('timeupdate', () => {prog.style.background= 'linear-gradient(90deg,teal, black ' + aud.currentTime / aud.duration * 100 + '%, snow 0)';prog.innerText = toMin(aud.currentTime) + ' | ' + toMin(aud.duration);for(j=0; j<lrcAr.length; j++) {if(aud.currentTime >= lrcAr) {if(mKey === j) showLrc(lrcAr);else continue;}}});
let mState = () => aud.paused ? (btnplay.style.display = 'block', btnpause.style.display = 'none', lrc.style.animationPlayState = 'paused') : (btnplay.style.display = 'none', btnpause.style.display = 'block', lrc.style.animationPlayState = 'running');
let showLrc = (time) => {lrc.style.animation = (mFlag ? 'bgMove1 ' : 'bgMove2 ') + time + 's linear forwards';lrc.innerHTML = lrcAr;mKey += 1;mFlag = !mFlag;};
let calcKey = () => {for(j = 0; j < lrcAr.length; j ++) {if(aud.currentTime <= lrcAr) {mKey = j - 1;break;}}if(mKey <0) mKey = 0;if(mKey > lrcAr.length - 1) mKey = lrcAr.length - 1;let mtime = lrcAr - (aud.currentTime - lrcAr);showLrc(mtime);};
let toMin = (val)=> {if (!val) return '00:00';val = Math.floor(val);let min = parseInt(val / 60), sec = parseFloat(val % 60);if(min < 10) min = '0' + min;if(sec < 10) sec = '0' + sec;return min + ':' + sec;};
</script>

马黑黑 发表于 2022-9-25 08:02

本帖最后由 马黑黑 于 2022-9-25 08:05 编辑

此帖尝试一下lrc歌词字体。之前,一直使用 sans-serif 字体家族,Windows下会默认使用微软雅黑。

宋体、新宋体、仿宋、楷体、黑体、微软雅黑、微软正黑体都是Windows内置的字体,也全都是中国人制作的字体(微软的字体委托北大方正制作,微软保留产权,非商业应用不用考虑可能引发的纠纷)。隶书需要额外安装,安装有office之后会自动拥有隶书字体(我的机器没有安装office)。

其实更好看的字体多了去,如全免费的思源字体、阿里为淘宝天猫打造的普惠体,都更优秀,但这些字体一般系统不会自带,需要额外安装。

马黑黑 发表于 2022-9-25 08:15

笔画不够粗壮的字体,在HTML环境下,不合适镂空。原因:CSS 的 text-stroke 的描边功能会挤占笔画的内边沿,笔画的里边空间会被压缩,严重之时连内部空间都没有,镂空后 text-fill-color 可能会没有操作空间。

默认字体中,黑体的笔画算是比较粗的,但和微软雅黑比还是显得偏细,镂空的效果一般,除非将字体设得很大。

可能正是由于存在对字体的适应问题,2013年就已经进入测试的 text-stroke 属性,一直未能转正。

红影 发表于 2022-9-25 09:17

马黑黑 发表于 2022-9-25 08:02
此帖尝试一下lrc歌词字体。之前,一直使用 sans-serif 字体家族,Windows下会默认使用微软雅黑。

宋体、 ...

“sans-serif 字体家族,Windows下会默认使用微软雅黑。”

雅黑的字体也不错,就冲这名儿就好,和黑黑是一个家族的{:4_173:}

马黑黑 发表于 2022-9-25 09:18

红影 发表于 2022-9-25 09:17
“sans-serif 字体家族,Windows下会默认使用微软雅黑。”

雅黑的字体也不错,就冲这名儿就好,和黑黑 ...

{:4_172:}

红影 发表于 2022-9-25 09:39

这小飞机飞得笃悠悠的,好自在{:4_187:}

红影 发表于 2022-9-25 10:09

这个歌词很奇特,听后说不上什么感觉。。。

马黑黑 发表于 2022-9-25 10:47

红影 发表于 2022-9-25 10:09
这个歌词很奇特,听后说不上什么感觉。。。

歌词很不错的

红影 发表于 2022-9-25 11:03

马黑黑 发表于 2022-9-25 10:47
歌词很不错的

是的,歌词很值得回味。

马黑黑 发表于 2022-9-25 11:09

红影 发表于 2022-9-25 11:03
是的,歌词很值得回味。

祁紫檀作为一名创作型歌手,感觉是有功力的,也有潜力。

红影 发表于 2022-9-25 11:37

马黑黑 发表于 2022-9-25 11:09
祁紫檀作为一名创作型歌手,感觉是有功力的,也有潜力。

去搜了一下,这首是她自己的词曲呢,很有内涵的一位歌手{:4_204:}

小辣椒 发表于 2022-9-25 12:45

我电脑有安装office,隶书可以看见的

黒黑这架是歼击机吗,漂亮{:4_173:}

小辣椒 发表于 2022-9-25 12:47

今天外面混一天,晚上要迟一点回家,报告黑神,我今天这个作业完不成了,这架小飞机很喜欢,必须玩一下

马黑黑 发表于 2022-9-25 12:51

小辣椒 发表于 2022-9-25 12:47
今天外面混一天,晚上要迟一点回家,报告黑神,我今天这个作业完不成了,这架小飞机很喜欢,必须玩一下

飞机原始尺寸比这个大,可以放大一点

马黑黑 发表于 2022-9-25 12:54

红影 发表于 2022-9-25 11:37
去搜了一下,这首是她自己的词曲呢,很有内涵的一位歌手

是的

马黑黑 发表于 2022-9-25 12:55

小辣椒 发表于 2022-9-25 12:45
我电脑有安装office,隶书可以看见的

黒黑这架是歼击机吗,漂亮

嗯,配合地面部队准备发起攻击

小辣椒 发表于 2022-9-25 12:55

马黑黑 发表于 2022-9-25 08:15
笔画不够粗壮的字体,在HTML环境下,不合适镂空。原因:CSS 的 text-stroke 的描边功能会挤占笔画的内边沿 ...

是的,有时候自己设置的字体只是你自己电脑看见这个效果,别人电脑看见不是这种效果的,以前做swf播放器,明明我做的字体别人看见不一样,开始我不明白,后来晓得,字体要自己电脑有才会显示这个效果

马黑黑 发表于 2022-9-25 12:57

小辣椒 发表于 2022-9-25 12:55
是的,有时候自己设置的字体只是你自己电脑看见这个效果,别人电脑看见不是这种效果的,以前做swf播放器 ...

而且不同的系统,内置的字体也不一样。但这几个都有:宋体,新宋体,黑体,Windows下肯定还有微软雅黑

小辣椒 发表于 2022-9-25 12:59

2022-9-25 12:51


小辣椒 发表于 2022-9-25 13:01

马黑黑 发表于 2022-9-25 12:55
嗯,配合地面部队准备发起攻击

那最好做的时候画面有全副武装的地面部队{:4_170:}
页: [1] 2 3
查看完整版本: 广袤天地