css模拟月亮一个月每一天不同的月相代码
代码语言:html
所属分类:布局界面
代码描述:css模拟月亮一个月每一天不同的月相代码
代码标签: css 模拟 月亮 月 每一天 不同 月相 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> moon-phase { --moon-phase-blur: 3px; --_lat: attr(lat type(<number>), 0); --_hour: attr(hour type(<number>), 12); --_w: calc(100% - 1% * attr(illumination type(<number>), 0%)); --_l: calc(var(--_lat) * 1.5deg); --_a: calc(((var(--_hour) - 12) * 15 * 0.7) * 1deg); --_r: calc(var(--_l) + var(--_a)); aspect-ratio: 1; border-radius: 50%; display: block; overflow: clip; position: relative; rotate: var(--_r, 0deg); } moon-phase::before { background: url('//repo.bfw.wiki/bfwrepo/icon/67f7579490770.png') center / cover no-repeat; content: ''; filter: var(--moon-phase-filter, sepia(1) grayscale(.25)); inset: 0; position: absolute; } moon-phase::after { background-color: var(--moon-phase-mask-bg, #000); border-radius: var(--_btlr, 0) var(--_btrr, 0) var(--_bbrr, 0) var(--_bblr, 0); content: ''; filter: var(--moon-phase-mask-filter, blur(var(--moon-phase-blur, 0px))); height: 100%; inset-inline: var(--_ii, auto 0); opacity: var(--moon-phase-mask-opacity, .85); position: absolute; width: var(--_w); } /* Phases */ [phase*="first-quarter"], [phase*="waxing"] { --_ii: 0 auto; } [phase*="crescent"], [phase*="first-quarter"], [phase*="waxing"] { --_bblr: 100%; --_btlr: 100%; } [phase*="crescent"], [phase*="last-quarter"], [phase*="waning"] { --_btrr: 100%; --_bbrr: 100%; } [phase*="gibbous"]::after { border-radius: 0; width: 100%; } [phase="waxing gibbous"]::after { mask: radial-gradient(circle at 100% 50%, #0000 calc(100% - var(--_w)), #000 .........完整代码请登录后点击上方下载按钮下载查看
网友评论0