js+svg实现网页主题色明暗切换过渡动画效果代码
代码语言:html
所属分类:动画
代码描述:js+svg实现网页主题色明暗切换过渡动画效果代码
代码标签: js svg 网页 主题色 明暗 切换 过渡 动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<link type="text/css" rel="stylesheet" href="//repo.bfw.wiki/bfwrepo/css/normalize.5.0.css">
<style>
* {
box-sizing: border-box;
}
[data-theme=dark] {
color-scheme: dark only;
}
[data-theme=light],
html {
color-scheme: light only;
}
@media(prefers-color-scheme: dark) {
color-scheme: dark only;
}
[aria-pressed=true] path:nth-of-type(1) {
display: none;
}
[aria-pressed=false] path:nth-of-type(2) {
display: none;
}
header {
position: relative;
}
header svg {
width: 60px;
position: absolute;
right: 100%;
top: 0;
height: auto;
scale: 1 1;
transform-origin: 100% 100%;
rotate: 25deg;
fill: canvasText;
translate: -25% -25%;
}
body {
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
background: canvas;
color: canvasText;
align-content: center;
}
body::before {
--size: 30px;
--line: color-mix(in lch, canvasText, transparent 85%);
content: '';
height: 100vh;
width: 100vw;
position: fixed;
background: radial-gradient(4px 4px at 50% 50%,
var(--line) 2px,
transparent 2px var(--size)
)
50% 50% / var(--size) var(--size);
-webkit-mask: linear-gradient(-25deg, transparent 30%, white);
mask: linear-gradient(-25deg, transparent 30%, white);
top: 0;
transf.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0