岁月神偷
<style>#papa { margin: 0 0 0 calc(50% - 593px); display: grid; place-items: center; width: 1024px; height: 640px; background: lightblue; box-shadow: 3px 3px 20px #000; overflow: hidden; transition: background-size .75s; position: relative; z-index: 1; }
#papa::before { position: absolute; content: ''; inset: 0; transition: .75s; background: url('https://638183.freep.cn/638183/t24/1/13.jpg') no-repeat center/cover; }
#papa:hover::before { transform: scale(1.2); }
#papa:fullscreen::before { transform: unset; } #lrc { position: absolute; top: 20px; font: bold 2.4em sans-serif; color: silver; text-shadow: 1px 1px 1px rgba(0,0,0,.75); --ani: lrcGo1; --duration: 1s; } #lrc::before { position: absolute; content: attr(data-lrc); width: 100%; height: 100%; color: rgba(0,100,100,.2); background: linear-gradient(to bottom, rgba(10,200,10,.35), rgba(0,100,200,.8)); background-clip: text; -webkit-background-clip: text; clip-path: inset(0 100% 0 0); animation: var(--ani) var(--duration) linear forwards var(--state); }
#mplayer { position: absolute; left: 52%; bottom: 10px; text-align: center; color: lightblue; }
#mplayer::before { position: absolute; content: attr(data-tt); left: 0; bottom: 25px; width: 100%; text-align-last: justify; }
#mprog { width: 280px; accent-color: snow; outline: none; cursor: pointer; }
#mprog:focus { accent-color: lightblue; }
#btnplay { width: 50px; height: 50px; cursor: pointer; animation: rotating 6s infinite linear var(--state); }
#btnplay:hover { filter: invert(.2); }
#btnFs { position: absolute; left: 38%; bottom: 10px; color: silver; background: none; opacity: 0; border: 2px solid silver; border-radius: 6px; padding: 4px; transition: all .75s; cursor: pointer; z-index: 100; }
#papa video { position: absolute; bottom: 0; width: 100%; height: calc(100% + 100px); object-fit: cover; mix-blend-mode: soft-light; pointer-events: none; }
@keyframes rotating { to { transform: rotate(360deg); } }
@keyframes lrcGo0 { to { clip-path: inset(0 0 0 0); } }
@keyframes lrcGo1 { to { clip-path: inset(0 0 0 0); } }
@keyframes move { to { offset-distance: 100%; } }
</style>
<div id="papa">
<audio src="https://music.163.com/song/media/outer/url?id=28285910"></audio>
<video src="https://img.tukuppt.com/video_show/2475824/00/08/39/5d21bde6a1eca.mp4" muted loop></video>
<div id="mplayer" data-tt="0:00 0:00">
<img id="btnplay" src="https://638183.freep.cn/638183/t23/btn/meihua_133482968750383750.png" title="播放/暂停" alt="" /><br>
<input id="mprog" type="range" min="0" max="100" step="any" value="0" title="调节进度" />
</div>
<div id="btnFs">全屏观赏</div>
<div id="lrc" data-lrc="HuaChao LRC">HuaChao LRC</div>
</div>
<script>
var geci = [ , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ];
var sF = document.createElement('script');
sF.charset = 'utf-8';
sF.src = 'https://638183.freep.cn/638183/web/js/rangelrc_fs.js';
document.querySelector('body').appendChild(sF);
</script>
本帖最后由 马黑黑 于 2024-3-4 08:29 编辑 <br /><br /><style>
.mum { position: relative; margin: 0; padding: 10px; font: normal 16px/20px Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; color: black; background: rgba(240, 240, 240,.95); box-shadow: 2px 2px 4px gray; border: thick groove lightblue; border-radius: 6px; }
.mum ::selection { background-color: rgba(0,100,100,.35); }
.mum div { margin: 0; padding: 0; }
.mum cl-cd { display: block; position: relative; margin: 0 0 0 50px; padding: 0 0 0 10px; white-space: pre-wrap; overflow-wrap: break-word; border-left: 1px solid silver; }
.mum cl-cd::before { position: absolute; content: attr(data-idx); width: 50px; color: gray; text-align: right; transform: translate(-70px); }
.tRed { color: red; }
.tBlue { color: blue; }
.tGreen { color: green; }
.tDarkRed { color: darkred; }
.tMagenta { color: magenta; }
</style>
<h2>代码:</h2>
<div class='mum'>
<cl-cd data-idx="1"><<span class="tDarkRed">style</span>></cl-cd>
<cl-cd data-idx="2"> #papa { <span class="tBlue">margin:</span> 0 0 0 calc(50% - 593px); <span class="tBlue">display:</span> grid; <span class="tBlue">place-items:</span> center; <span class="tBlue">width:</span> 1024px; <span class="tBlue">height:</span> 640px; <span class="tBlue">background:</span> lightblue; <span class="tBlue">box-shadow:</span> 3px 3px 20px #000; <span class="tBlue">overflow:</span> hidden; <span class="tBlue">transition:</span> background-size .75s; <span class="tBlue">position:</span> relative; <span class="tBlue">z-index:</span> 1; }</cl-cd>
<cl-cd data-idx="3"> #papa::before { <span class="tBlue">position:</span> absolute; <span class="tBlue">content:</span> <span class="tMagenta">''</span>; <span class="tBlue">inset:</span> 0; <span class="tBlue">transition:</span> .75s; <span class="tBlue">background:</span> url(<span class="tMagenta">'https://638183.freep.cn/638183/t24/1/13.jpg'</span>) no-repeat center/cover; }</cl-cd>
<cl-cd data-idx="4"> #<span class="tBlue">papa:</span>hover::before { <span class="tBlue">transform:</span> scale(1.2); }</cl-cd>
<cl-cd data-idx="5"> #<span class="tBlue">papa:</span>fullscreen::before { <span class="tBlue">transform:</span> unset; }</cl-cd>
<cl-cd data-idx="6"> #lrc { <span class="tBlue">position:</span> absolute; <span class="tBlue">top:</span> 20px; <span class="tBlue">font:</span> bold 2.4em sans-serif; <span class="tBlue">color:</span> silver; <span class="tBlue">text-shadow:</span> 1px 1px 1px rgba(0,0,0,.75); <span class="tBlue">--ani:</span> lrcGo1; <span class="tBlue">--duration:</span> 1s; }</cl-cd>
<cl-cd data-idx="7"> #lrc::before { <span class="tBlue">position:</span> absolute; <span class="tBlue">content:</span> attr(data-lrc); <span class="tBlue">width:</span> 100%; <span class="tBlue">height:</span> 100%; <span class="tBlue">color:</span> rgba(0,100,100,.2); <span class="tBlue">background:</span> linear-gradient(to bottom, rgba(10,200,10,.35), rgba(0,100,200,.8)); <span class="tBlue">background-clip:</span> text; <span class="tBlue">-webkit-background-clip:</span> text; <span class="tBlue">clip-path:</span> inset(0 100% 0 0); <span class="tBlue">animation:</span> <span class="tBlue">var</span>(--ani) <span class="tBlue">var</span>(--duration) linear forwards <span class="tBlue">var</span>(--state); }</cl-cd>
<cl-cd data-idx="8"> #mplayer { <span class="tBlue">position:</span> absolute; <span class="tBlue">left:</span> 52%; <span class="tBlue">bottom:</span> 10px; <span class="tBlue">text-align:</span> center; <span class="tBlue">color:</span> lightblue; }</cl-cd>
<cl-cd data-idx="9"> #mplayer::before { <span class="tBlue">position:</span> absolute; <span class="tBlue">content:</span> attr(data-tt); <span class="tBlue">left:</span> 0; <span class="tBlue">bottom:</span> 25px; <span class="tBlue">width:</span> 100%; <span class="tBlue">text-align-last:</span> justify; }</cl-cd>
<cl-cd data-idx="10"> #mprog { <span class="tBlue">width:</span> 280px; <span class="tBlue">accent-color:</span> snow; <span class="tBlue">outline:</span> none; <span class="tBlue">cursor:</span> pointer; }</cl-cd>
<cl-cd data-idx="11"> #<span class="tBlue">mprog:</span>focus { <span class="tBlue">accent-color:</span> lightblue; }</cl-cd>
<cl-cd data-idx="12"> #btnplay { <span class="tBlue">width:</span> 50px; <span class="tBlue">height:</span> 50px; <span class="tBlue">cursor:</span> pointer; <span class="tBlue">animation:</span> rotating 6s infinite linear <span class="tBlue">var</span>(--state); }</cl-cd>
<cl-cd data-idx="13"> #<span class="tBlue">btnplay:</span>hover { <span class="tBlue">filter:</span> invert(.2); }</cl-cd>
<cl-cd data-idx="14"> #btnFs { <span class="tBlue">position:</span> absolute; <span class="tBlue">left:</span> 38%; <span class="tBlue">bottom:</span> 10px; <span class="tBlue">color:</span> silver; <span class="tBlue">background:</span> none; <span class="tBlue">opacity:</span> 0; <span class="tBlue">border:</span> 2px solid silver; <span class="tBlue">border-radius:</span> 6px; <span class="tBlue">padding:</span> 4px; <span class="tBlue">transition:</span> all .75s; <span class="tBlue">cursor:</span> pointer; <span class="tBlue">z-index:</span> 100; }</cl-cd>
<cl-cd data-idx="15"> #papa video { <span class="tBlue">position:</span> absolute; <span class="tBlue">bottom:</span> 0; <span class="tBlue">width:</span> 100%; <span class="tBlue">height:</span> calc(100% + 100px); <span class="tBlue">object-fit:</span> cover; <span class="tBlue">mix-blend-mode:</span> soft-light; <span class="tBlue">pointer-events:</span> none; }</cl-cd>
<cl-cd data-idx="16"> @keyframes rotating { to { <span class="tBlue">transform:</span> rotate(360deg); } }</cl-cd>
<cl-cd data-idx="17"> @keyframes lrcGo0 { to { <span class="tBlue">clip-path:</span> inset(0 0 0 0); } }</cl-cd>
<cl-cd data-idx="18"> @keyframes lrcGo1 { to { <span class="tBlue">clip-path:</span> inset(0 0 0 0); } }</cl-cd>
<cl-cd data-idx="19"> @keyframes move { to { <span class="tBlue">offset-distance:</span> 100%; } }</cl-cd>
<cl-cd data-idx="20"></<span class="tDarkRed">style</span>></cl-cd>
<cl-cd data-idx="21"> </cl-cd>
<cl-cd data-idx="22"><<span class="tDarkRed">div</span> <span class="tRed">id</span>=<span class="tMagenta">"papa"</span>></cl-cd>
<cl-cd data-idx="23"> <<span class="tDarkRed">audio</span> src=<span class="tMagenta">"https://music.163.com/song/media/outer/url?<span class="tRed">id</span>=28285910"</span>></<span class="tDarkRed">audio</span>></cl-cd>
<cl-cd data-idx="24"> <<span class="tDarkRed">video</span> src=<span class="tMagenta">"https://img.tukuppt.com/video_show/2475824/00/08/39/5d21bde6a1eca.mp4"</span> muted loop></<span class="tDarkRed">video</span>></cl-cd>
<cl-cd data-idx="25"> <<span class="tDarkRed">div</span> <span class="tRed">id</span>=<span class="tMagenta">"mplayer"</span> data-tt=<span class="tMagenta">"0:00 0:00"</span>></cl-cd>
<cl-cd data-idx="26"> <<span class="tDarkRed">img</span> <span class="tRed">id</span>=<span class="tMagenta">"btnplay"</span> src=<span class="tMagenta">"https://638183.freep.cn/638183/t23/btn/meihua_133482968750383750.png"</span> title=<span class="tMagenta">"播放/暂停"</span> alt=<span class="tMagenta">""</span> /><<span class="tDarkRed">br</span>></cl-cd>
<cl-cd data-idx="27"> <<span class="tDarkRed">input</span> <span class="tRed">id</span>=<span class="tMagenta">"mprog"</span> type=<span class="tMagenta">"range"</span> min=<span class="tMagenta">"0"</span> max=<span class="tMagenta">"100"</span> step=<span class="tMagenta">"any"</span> value=<span class="tMagenta">"0"</span> title=<span class="tMagenta">"调节进度"</span> /></cl-cd>
<cl-cd data-idx="28"> </<span class="tDarkRed">div</span>></cl-cd>
<cl-cd data-idx="29"> <<span class="tDarkRed">div</span> <span class="tRed">id</span>=<span class="tMagenta">"btnFs"</span>>全屏观赏</<span class="tDarkRed">div</span>></cl-cd>
<cl-cd data-idx="30"> <<span class="tDarkRed">div</span> <span class="tRed">id</span>=<span class="tMagenta">"lrc"</span> data-lrc=<span class="tMagenta">"HuaChao LRC"</span>>HuaChao LRC</<span class="tDarkRed">div</span>></cl-cd>
<cl-cd data-idx="31"></<span class="tDarkRed">div</span>></cl-cd>
<cl-cd data-idx="32"> </cl-cd>
<cl-cd data-idx="33"><<span class="tDarkRed">script</span>></cl-cd>
<cl-cd data-idx="34"><span class="tBlue">var</span> geci = [ , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ];</cl-cd>
<cl-cd data-idx="35"><span class="tBlue">var</span> sF = <span class="tRed">document</span>.createElement(<span class="tMagenta">'script'</span>);</cl-cd>
<cl-cd data-idx="36">sF.charset = <span class="tMagenta">'utf-8'</span>;</cl-cd>
<cl-cd data-idx="37">sF.src = <span class="tMagenta">'https://638183.freep.cn/638183/web/js/rangelrc_fs.js'</span>;</cl-cd>
<cl-cd data-idx="38"><span class="tRed">document</span>.querySelector(<span class="tMagenta">'body'</span>).appendChild(sF);</cl-cd>
<cl-cd data-idx="39"></<span class="tDarkRed">script</span>></cl-cd>
</div>
整个背景都可以推进移出。。画面阔朗,视频震憾。。。{:4_187:} 一大早看到这么美的贴子,心情愉悦。。{:4_187:} 南无月 发表于 2024-3-4 08:31
整个背景都可以推进移出。。画面阔朗,视频震憾。。。
{:4_190:} 南无月 发表于 2024-3-4 08:32
一大早看到这么美的贴子,心情愉悦。。
你看看全屏的CSS处理,这里用了伪类 :fullscreen,transform: unset; 是复原(因为此前伪元素 ::before 可能变大过) 很真实,接地气,大众人群中的可爱菇凉,对,就是她,偷走了你的岁月{:4_173:}很多人看到的 马黑黑 发表于 2024-3-4 08:32
{:4_190:}回一杯。 马黑黑 发表于 2024-3-4 08:34
你看看全屏的CSS处理,这里用了伪类 :fullscreen,transform: unset; 是复原(因为此前伪元素 ::before...
1.2倍,感觉不止 樵歌 发表于 2024-3-4 08:55
很真实,接地气,大众人群中的可爱菇凉,对,就是她,偷走了你的岁月很多人看到的
附议{:4_173:} 帖子漂亮,歌曲好听,学习下{:4_190:} 这个好看,大小变化弄得好像真的在动,很活泼的样子{:4_199:} 黑黑的视频每次选得都很到位,很漂亮{:4_199:} 红影 发表于 2024-3-4 09:46
黑黑的视频每次选得都很到位,很漂亮
还行 樵歌 发表于 2024-3-4 08:55
很真实,接地气,大众人群中的可爱菇凉,对,就是她,偷走了你的岁月很多人看到的
有人证了? 红影 发表于 2024-3-4 09:45
这个好看,大小变化弄得好像真的在动,很活泼的样子
还好 南无月 发表于 2024-3-4 08:57
回一杯。
谢回 朵拉 发表于 2024-3-4 09:15
帖子漂亮,歌曲好听,学习下
{:4_190:} 南无月 发表于 2024-3-4 09:01
1.2倍,感觉不止
就是酱紫的,不多不少 一不小心鼠标划上去了才发现会动的