|
|

楼主 |
发表于 2023-2-25 08:25
|
显示全部楼层
帖子完整代码
- <style>
- #papa {
- margin: -80px 0 0 calc(50% - 593px);
- width: 1024px;
- height: 640px;
- background: lightblue url('https://638183.freep.cn/638183/t23/webp/mwrfsi2.webp') no-repeat center/cover;
- box-shadow: 3px 3px 20px #000;
- position: relative;
- user-select: none;
- z-index: 1;
- --state: paused;
- --opa: 1;
- }
- #papa::before, #papa::after {
- position: absolute;
- content: '';
- width: 50%;
- height: 100%;
- background: url('https://638183.freep.cn/638183/t23/webp/mwrfsi1.webp') no-repeat center/cover;
- opacity: var(--opa);
- transition: opacity 1.2s;
- }
- #papa::after { left: 50%; transform: rotateY(180deg); }
- #papa:hover { --opa: 0; }
- #papa:fullscreen { animation: flash 8s linear infinite alternate; }
- #fly {
- position: absolute;
- left: 50%;
- width: 360px;
- height: 200px;
- animation: fly 100s infinite alternate var(--state);
- }
- .mplayer {
- --tt: 6s;
- position: absolute;
- left: 0;
- width: 200px;
- height: 200px;
- border-radius: 50%;
- transform: perspective(1000px) rotateX(45deg) rotateY(30deg);
- animation: rot var(--tt) linear infinite var(--state);
- cursor: pointer;
- transition: .45s;
- z-index: 2;
- }
- .mplayer:hover { filter: drop-shadow(0 0 80px snow) brightness(200%); }
- .mplayer:nth-of-type(2) {
- --tt: 4s;
- left: 210px;
- width: 150px;
- height: 150px;
- }
- .mplayer:nth-of-type(3) {
- --tt: 2s;
- left: 130px;
- width: 100px;
- height: 100px;
- }
- @keyframes rot { to { transform: perspective(1000px) rotateX(45deg) rotateY(30deg) rotateZ(360deg); } }
- @keyframes fly { to { left: calc(100% - 360px); } }
- @keyframes flash { from { --opa: 1; } to { --opa: 0; } }
- </style>
- <div id="papa">
- <div id="fly">
- <img class="mplayer" src="https://638183.freep.cn/638183/t23/1/toui.png" alt="" />
- <img class="mplayer" src="https://638183.freep.cn/638183/t23/1/toui.png" alt="" />
- <img class="mplayer" src="https://638183.freep.cn/638183/t23/1/toui.png" alt="" />
- </div>
- </div>
- <audio id="aud" src="https://music.163.com/song/media/outer/url?id=1335968349.mp3" loop autoplay></audio>
- <script>
- (function() {
- (function(mkFS) {let setFullScreen = (user_set) => {let pa = user_set.pa;if(typeof(pa) !== 'object') return false;if(!user_set.set) user_set.set = 'color: snow; background: black; border: 2px solid snow; left: 40px; bottom: 40px;';btnMsg = document.createElement('span');btnMsg.style.cssText = `position: absolute; border-radius: 8px; padding: 4px; cursor: pointer; z-index:998; ${user_set.set}`;btnMsg.innerText = '全屏观赏';btnMsg.style.display = 'none';pa.appendChild(btnMsg);let timerId, fs = false;btnMsg.onclick = () => fs ? document.exitFullscreen() : pa.requestFullscreen();pa.addEventListener('mousemove', (e) => {clearTimeout(timerId);btnMsg.style.display = 'block';timerId = setTimeout('btnMsg.style.display = "none"', 3000);});document.addEventListener('fullscreenchange', () => {if (document.fullscreenElement !== null) {fs = true;btnMsg.innerText = '退出全屏';} else {fs = false;btnMsg.innerText = '全屏观赏';}});};mkFS.FS = setFullScreen;})(this);
- let mState = () => papa.style.setProperty('--state', aud.paused ? 'paused' : 'running');
- let btns = document.querySelectorAll('.mplayer');
- [...btns].forEach((item) => item.onclick = () => aud.paused ? aud.play() : aud.pause());
- aud.addEventListener('play', () => mState());
- aud.addEventListener('pause', () => mState());
- FS({
- pa:papa,
- set:'right: 20px; bottom: 20px; background: transparent; color: snow; border: 2px solid snow;',
- });
- aud.onerror = () => {
- if(aud.error.code === 4) aud.src = 'http://www.kumeiwp.com/sub/filestores/2023/02/24/e2bf972fc421ee7cde43dcb8e2338ddd.mp3';
- }
- })();
- </script>
复制代码
|
|