css实现左侧可折叠收缩边栏菜单效果代码
代码语言:html
所属分类:菜单导航
代码描述:css实现左侧可折叠收缩边栏菜单效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"> <link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;700&display=swap'> <style> * { border: 0; box-sizing: border-box; margin: 0; padding: 0; } :root { --hue: 223; --hue2: 13; --bg: hsl(var(--hue),10%,90%); --fg: hsl(var(--hue),10%,10%); --primary: hsl(var(--hue),90%,55%); --red: hsl(var(--hue2),90%,55%); --trans-dur: 0.3s; font-size: calc(16px + (20 - 16) * (100vw - 320px) / (1280 - 320)); } body, button, input { font: 1em/1.5 "DM Sans", sans-serif; } body { background-color: var(--bg); color: var(--fg); height: 100vh; transition: background-color var(--trans-dur), color var(--trans-dur); } button { -webkit-appearance: none; appearance: none; } .nav { background-color: hsl(0,0%,100%); display: flex; flex-direction: column; position: relative; height: 100%; width: 16em; transition: background-color var(--trans-dur), width var(--trans-dur) ease-in-out; } .nav__main { overflow-x: hidden; overflow-y: hidden; padding: 2.5em 1.75em; width: inherit; -webkit-overflow-scrolling: touch; scrollbar-width: 8px; scrollbar-color: hsla(0,0%,0%,0.2) transparent; } .nav__main::-webkit-scrollbar { width: 8px; } .nav__main::-webkit-scrollbar-track { background: transparent; } .nav__main::-webkit-scrollbar-thumb { background-color: hsla(0,0%,0%,0.2); border-radius: 4px; } .nav__main:hover { overflow-y: auto; } .nav__bottom { background-color: inherit; box-shadow: 0 1px 0 hsl(var(--hue),10%,80%) inset; padding: 1em 1.75em; transition: box-shadow var(--trans-dur); } .nav__heading { color: hsl(var(--hue),10%,45%); display: block; font-size: 0.75em; line-height: 1; margin-bottom: 0.75rem; text-transform: uppercase; transition: color var(--trans-dur); } .nav__heading-text { display: inline-block; transform: translateX(0.75em); transition: transform var(--trans-dur) ease-in-out; } .nav__items { list-style: none; margin: 0 0 3em 0; } .nav__items:last-child { margin-bottom: 0; } .nav__item-box { background-color: hsla(var(--hue),90%,55%,0); border-radius: 0.75em; color: hsl(var(--hue),20%,55%); display: flex; align-items: center; padding: 0.75em; text-align: left; text-decoration: none; transition: background-color var(--trans-dur) ease-in-out, color var(--trans-dur), width var(--trans-dur) ease-in-out; width: 12.5em; min-width: 3em; } .nav__item-box:focus, .nav__item-box:hover { background-color: hsla(var(--hue),90%,55%,0.1); color: var(--primary); } .nav__item-box:focus { outline: transparent; } .nav__item-icon, .nav__item-icon svg { display: block; width: 1.5em; height: 1.5em; } .nav__item-icon { flex-shrink: 0; position: relative; text-align: center; transition: transform var(--trans-dur) ease-in-out; } .nav__item-icon--badge:before { background-color: var(--primary); border-radius: 50%; box-shadow: 0 0 0 0.1em hsl(0,0%,100%); content: ""; position: absolute; top: 0; right: 0; width: 0.5em; height: 0.5em; transform: scale(0); transition: box-shadow var(--trans-dur), transform var(--trans-dur) ease-in-out; } .nav__item-text { marg.........完整代码请登录后点击上方下载按钮下载查看
网友评论0