js+css实现手风琴折叠图文面板效果代码
代码语言:html
所属分类:其他
代码描述:js+css实现手风琴折叠图文面板效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> @import url('//repo.bfw.wiki/bfwrepo/css/normalize.min.css') layer(normalize); @layer normalize, base, demo; @layer demo { body { background: light-dark(#fff, #000); display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 1rem; padding-block: 2rem; } h1, p { margin: 0; } h1.fluid { --font-size-min: 22; --font-level: 4.25; } h3 { white-space: nowrap; margin: 0; } body > p { width: 74ch; max-width: calc(100% - 4rem); text-wrap: balance; font-family: monospace; margin-bottom: 4rem; line-height: 1.5; opacity: 0.8; font-weight: 400; @media (max-width: 768px) { text-align: center; } } li :is(svg, h3) { opacity: 0.6; transition: opacity calc(var(--speed) * 1.2) var(--easing); } li :is(a, p) { opacity: 0; transition: opacity calc(var(--speed) * 1.2) var(--easing); width: -webkit-fit-content; width: -moz-fit-content; width: fit-content; } li img { filter: grayscale(1) brightness(1.5); scale: 1.1; transition-property: filter, scale; transition-duration: calc(var(--speed) * 1.2); transition-timing-function: var(--easing); } [data-active='true'] :is(a, p, h3, svg) { opacity: var(--opacity, 1); } [data-active='true'] :is(a, p) { transition-delay: calc(var(--speed) * 0.25); } [data-active='true'] img { filter: grayscale(0) brightness(1); scale: 1; transition-delay: calc(var(--speed) * 0.25); } article { /* outline: 2px dashed canvasText; */ width: calc(var(--article-width) * 1px); height: 100%; position: absolute; font-family: monospace; top: 0; left: 0; display: flex; flex-direction: column; justify-content: flex-end; gap: 1rem; padding-inline: calc(var(--base) * 0.5 - 9px); padding-bottom: 1rem; overflow: hidden; h3 { position: absolute; top: 1rem; left: calc(var(--base) * 0.5); transform-origin: 0 50%; rotate: 90deg; font-size: 1rem; font-weight: 300; text-transform: uppercase; font-family: monospace; } svg { width: 18px; fill: none; } p { font-size: 13px; text-wrap: balance; line-height: 1.25; --opacity: 0.8; } a { position: absolute; bottom: 1rem; height: 18px; line-height: 1; color: inherit; &:is(:focus-visible, :hover) { outline: none; span { text-decoration: underline; text-underline-offset: 4px; } } span { display: inline-block; line-height: 18px; translate: calc(var(--base) * 0.5); font-weight: 500; } } img { position: absolute; pointer-event.........完整代码请登录后点击上方下载按钮下载查看
网友评论0