svg+css实现图标点击变形动画效果代码
代码语言:html
所属分类:动画
代码描述:svg+css实现图标点击变形动画效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> @media screen and (max-width: 800px) { html { font-size: 10px; } } @media screen and (max-width: 450px) { html { font-size: 6px; } } body { display: flex; justify-content: center; align-items: center; height: 100vh; background-color: black; overflow: hidden; } .menu { position: relative; display: block; width: 10rem; height: 10rem; margin: 2rem 6rem; cursor: pointer; transition: transform 0.5s ease; transform-style: preserve-3d; transform-origin: center center 5rem; } .menu__face { position: absolute; top: 0; left: 0; width: 10rem; height: 10rem; transition: transform 0.5s ease; transform-origin: center center 5rem; } .menu__face--d2 { transform: rotate3d(0, 1, 0, 90deg); } .menu__face--d3 { transform: translateZ(10rem); } .menu__face--d4 { transform: rotate3d(0, -1, 0, 90deg); } .menu__face--d5 { transform: rotate3d(-1, 0, 0, 90deg); } .menu__face--d6 { transform: rotate3d(1, 0, 0, 90deg); } .menu__face--axis-vertical { transform: translateZ(5rem); } .menu__face--axis-horizontal { transform: rotate3d(-1, 0, 0, 90deg) translateZ(5rem); } .menu__face--square { background-color: rgba(0, 0, 0, 0.5); } .menu--minimal .menu__face--square { background: none; } .menu[data-position="1"] { transform: rotate3d(0, 1, 0, 90deg); } .menu[data-position="2"] { transform: rotate3d(0, 1, 0, 90deg) rotate3d(0, 0, 1, 90deg) rotate3d(0, 1, 0, 90deg); } .menu[data-position="3"] { transform: rotate3d(0, 1, 0, 90deg) rotate3d(0, 0, 1, 90deg) rotate3d(0, 1, 0, 90deg) rotate3d(0, 1, 0, 90deg) rotate3d(0, 0, 1, 90deg); } </style> </head> <body translate="no"> <div class="menu"> <div class="menu__face menu__face--square menu__face--d1 menu__face--hamburger"> <svg width="10rem" height="10rem" viewBox="0 0 40 40" xmlns="http://www.w3.org.........完整代码请登录后点击上方下载按钮下载查看
网友评论0