svg+css实现立体书签checkbox点击开关效果代码
代码语言:html
所属分类:布局界面
代码描述:svg+css实现立体书签checkbox点击开关效果代码
代码标签: svg css 立体 书签 checkbox 点击 开关
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> @property --fade-out { syntax: "<percentage>"; initial-value: 100%; inherits: true; } @property --pulse { syntax: "<percentage>"; initial-value: 0%; inherits: true; } @property --pulse2 { syntax: "<percentage>"; initial-value: 0%; inherits: true; } @property --copacity { syntax: "<percentage>"; initial-value: 0%; inherits: true; } .container { --w: 25vmin; --h: 40vmin; --gi: 1vmin; --gih: calc(var(--gi) / 2); --gihn: calc(var(--gi) / -2); } .bookmark-inside { width: calc(var(--w) - var(--gi)); height: calc(var(--h) - var(--gi)); background: #b5bbc8; position: absolute; right: calc(20vmin + var(--gih)); top: calc(20vmin + var(--gih)); border-radius: 3vmin 3vmin 0 0; box-shadow: inset -1vmin 1vmin 3vmin var(--inner-shadow, transparent), inset 0.5vmin 0 0.1vmin rgba(255, 255, 255, 0.3), inset -0.5vmin 0.1vmin 0vmin rgba(255, 255, 255, 0.3), inset 0.4vmin 0 0.05vmin rgba(0, 0, 0, 0.3), inset -0.4vmin 0 0.05vmin rgba(0, 0, 0, 0.3), inset 0vmin 0 1vmin rgba(0, 0, 0, 0.1); -webkit-mask: url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v4") center var(--gihn) no-repeat; mask: url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v4") center var(--gihn) no-repeat; -webkit-mask-size: cover; mask-size: cover; transition: all 0.3s ease; } .bookmark-inside:after { border-radius: 0.5rem; content: ""; width: 100%; aspect-ratio: 1; position: absolute; background: rgba(255, 255, 255, 0.7); opacity: 0.5; translate: 0 73%; box-shadow: -0.5vmin 0.1vmin 0.1vmin rgba(0, 0, 0, 0.4), 0.1vmin -0.1vmin 0.7vmin rgba(0, 0, 0, 0.5); bottom: 0; right: 0; left: 0; rotate: 45deg; } .bookmark { width: var(--w); height: var(--h); opacity: 0.9; background: conic-gradient(rgba(0, 0, 0, var(--c-bg-alpha, 0.2)), rgba(0, 0, 0, var(--c-bg-alpha, 0)), rgba(0, 0, 0, var(--c-bg-alpha, 0.2))), #b4bac7; position: absolute; right: 20vmin; top: 20vmin; border-radius: 3vmin 3vmin 0 0; box-shadow: inset 0.2vmin -0.1vmin 0.09vmin rgba(255, 255, 255, 0.6), inset 0.9vmin 0 0.9vmin rgba(0, 0, 0, 0.3), inset -0.2vmin 0 0.3vmin rgba(0, 0, 0, 0.3); -webkit-mask: url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v5") center bottom no-repeat; mask: url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v5") center bottom no-repeat; -webkit-mask-size: cover; mask-size: cover; } .bookmark:after { border-radius: 0.5rem; content: ""; width: 100%; aspect-ratio: 1; position: absolute; background: rgba(255, 255, 255, 0.7); opacity: 0.5; translate: 0 73%; box-shadow: 0 0 0.6vmin black, -0.1vmin 0.1vmin 0.7vmin rgba(0, 0, 0, 0.5), 0.1vmin -0.1vmin 0.7vmin rgba(0, 0, 0, 0.5); bottom: 0; right: 0; left: 0; rotate: 45deg; transform: scale5(1.4); } .bookmark-top { width: calc(var(--w)); height: calc(var(--h)); padding: 0.1vmin; border-top: 0.4vmin solid rgba(255, 255, 255, 0.5); background: radial-gradient(120% 16% at 50% calc(90% + var(--pulse2)), rgba(255 255 255/var(--copacity, 0%)), transparent), radial-gradient(120% 10% at 50% calc(22% + var(--fade-out) + var(--pulse)), rgba(255, 255, 255, 0.8), transparent), linear-gradient(to bottom, rgba(255, 255, 255, 0.1), transparent 10%, rgba(0, 0, 0, 0.1)) padding-box, linear-gradient(#15adf3 calc(0% + var(--fade-out) + var(--pulse)), #36c6ff calc(20% + var(--fade-out) + var(--pulse)), #171da2 calc(40% + var(--fade-out) + var(--pulse)), #0077ff) content-box, #0032ff; position: absolute; right: 20vmin; top: 20vmin; border-radius: 3vmin 3vmin 0 0; -webkit-mask: linear-gradient(to bottom, transparent var(--fade-out), black calc(var(--fade-out) + 10%)), url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v4") center var(--gihn) no-repeat; mask: linear-gradient(to bottom, transparent var(--fade-out), black calc(var(--fade-out) + 10%)), url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v4") center var(--gihn) no-repeat; -webkit-mask-size: cover; mask-size: cover; -webkit-mask-composite: source-in, xor; mask-composite: intersect; transition: all 0.3s ease; box-shadow: inset 0.5vmin 0 0.1vmin rgba(0, 0, 0, 0.3), inset -0.3vmin 0 0.1vmin rgba(255, 255, 255, 0.8); } .bookmark-top:before { content: ""; position: absolute; background: #050505; opacity: 0.19; bottom: 0; right: 0; left: 0; top: 0; mix-blend-mode: overlay; transform: scaleY(62) scaleX(4); filter: url(#noise); } .bookmark-top:after { border-radius: 0.5rem; content: "r"; width: 100%; aspect-ratio: 1; position: absolute; background: rgba(255, 255, 255, 0.7); opacity: 0.5; translate: 0 73%; box-shadow: -0.5vmin -0.4vmin 0vmin rgba(255, 255, 255, 0.5), 0.5vmin -0.8vmin 0.4vmin rgba(0, 0, 0, 0.9); bottom: 0; right: 0; left: 0; rotate: 45deg; } .bookmark-top-inner { --inner-p: 4vmin; width: calc(var(--w) - var(--inner-p)); height: calc(var(--h) - var(--inner-p)); background: repeating-linear-gradient(to right, rgba(255, 255, 255, 0.1) 0.02vmin, rgba(255, 255, 255, 0.03) 0.02vmin, transparent 0.05vmin), rgba(0, 0, 0, 0.01); -webkit-backdrop-filter: blur(1.5rem) brightness(1.1) contrast(1.1); backdrop-filter: blur(1.5rem) brightness(1.1) contrast(1.1); position: absolute; right: calc(20vmin + var(--inner-p) / 2); top: calc(20vmin); border-radius: 1vmin; -webkit-mask: linear-gradient(to bottom, transparent 1vmin, black 12%, transparent, black), url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v4") center var(--gihn) no-repeat; mask: linear-gradient(to bottom, transparent 1vmin, black 12%, transparent, black), url("//repo.bfw.wiki/bfwrepo/svg/bookmark/bookmark.svg?v4") center var(--gihn) no-repeat; -webkit-mask-composite: source-in, xor; mask-composite: intersect; -webkit-mask-size: cover; .........完整代码请登录后点击上方下载按钮下载查看
网友评论0