Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
css
*, *::before, *::after { padding: 0; margin: 0 auto; box-sizing: border-box; transform-style: preserve-3d; } body { background-color: #345; color: #fff; min-height: 100vh; display: flex; justify-content: center; align-items: center; font-size: 40px; perspective: 35em; } .keyboard { position: relative; transform: rotateX(60deg); cursor: pointer; } .key > * { position: absolute; } .key::after { content: ""; position: absolute; top: 0; left: 50%; width: 0.5em; height: 0.5em; transform: translateX(-50%) rotateX(120deg) translateY(0.25em); -webkit-clip-path: polygon(25% 100%, 75% 100%, 75% 50%, 100% 50%, 50% 0, 0 50%, 25% 50%); clip-path: polygon(25% 100%, 75% 100%, 75% 50%, 100% 50%, 50% 0, 0 50%, 25% 50%); transform-origin: top; transition: opacity 0.2s; opacity: 0; } .white { position: absolute; width: calc(1em - 1px); height: 5em; background-image: linear-gradient(#eee, #fff); transform-origin: top; transition: all 0.2s; } .white:hover { transform: rotateX(-4.2deg); } .white:hover::after { opacity: 1; background-color: #fff7; } .white .front { width: 100%; height: 0.75em; top: 100%; background-color: #eee; background-image: linear-gradient(#fff, #aaa); transform: rotateX(-90deg); transform-origin: top; } .white .left { width: 0.75em; height: 100%; background-image: linear-gradient(90deg, #888, #444); transform: rotateY(90deg); transform-origin: left; } .white .right { width: 0.75em; height: 100%; right: 0; background-image: linear-gradient(90deg, #444, #888); transform: rotateY(-90deg); transform-origin: right; } .black { position: absolute; width: calc(0.5em - 1px); height: 3em; background-image: linear-gradient(#333, #111); transform: translateZ(0.25em); transform-origin: top; transition: transform 0.2s; } .black:hover { transform: translateZ(0.25em) rotateX(-4.2deg); } .black:hover::after { opacity: 1; background-color: #0007; } .black .front { width: 100%; height: 1.4em; top: 100%; background-color: #f00; background-image: linear-gradient(#333, #000); transform: rotateX(-45deg); transform-origin: top; } .black .left { width: 1em; height: calc(100% + 1em); background-image: linear-gradient(90deg, #222, #000); transform: rotateY(90deg); transform-origin: left; -webkit-clip-path: polygon(0 0, 0 3em, 100% 100%, 100% 0); clip-path: polygon(0 0, 0 3em, 100% 100%, 100% 0); } .black .right { width: 1em; height: calc(100% + 1em); right: 0; background-image: linear-gradient(90deg, #000, #222); transform: rotateY(-90deg); transform-origin: right; -webkit-clip-path: polygon(0 0, 0 100%, 100% 3em, 100% 0); clip-path: polygon(0 0, 0 100%, 100% 3em, 100% 0); } .C { left: calc(var(--leftOffset) + 0em); } .Db { left: calc(var(--leftOffset) + 0.75em); } .D { left: calc(var(--leftOffset) + 1em); } .Eb { left: calc(var(--leftOffset) + 1.75em); } .E { left: calc(var(--leftOffset) + 2em); } .F { left: calc(var(--leftOffset) + 3em); } .Gb { left: calc(var(--leftOffset) + 3.75em); } .G { left: calc(var(--leftOffset) + 4em); } .Ab { left: calc(var(--leftOffset) + 4.75em); } .A { left: calc(var(--leftOffset) + 5em); } .Bb { left: calc(var(--leftOffset) + 5.75em); } .B { left: calc(var(--leftOffset) + 6em); } .octave1 { --leftOffset: -10.5em; } .octave2 { --leftOffset: -3.5em; } .octave3 { --leftOffset: 3.5em; }
JavaScript
粒子
时间
文字
hover
canvas
3d
游戏
音乐
火焰
水波
轮播图
鼠标跟随
动画
css
加载动画
导航
菜单
按钮
滑块
tab
弹出层
统计图
svg
×
Close
在线代码下载提示
开通在线代码永久免费下载,需支付20jQ币
开通后,在线代码模块中所有代码可终身免费下!
您已开通在线代码永久免费下载,关闭提示框后,点下载代码可直接下载!
您已经开通过在线代码永久免费下载
对不起,您的jQ币不足!可通过发布资源 或
直接充值获取jQ币
取消
开通下载
<!doctype html> <html> <head> <meta charset="utf-8"> <title>CSS钢琴键盘-jq22.com</title> <script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script> <style>
</style> </head> <body>
<script>
</script>
</body> </html>
2012-2021 jQuery插件库版权所有
jquery插件
|
jq22工具库
|
网页技术
|
广告合作
|
在线反馈
|
版权声明
沪ICP备13043785号-1
浙公网安备 33041102000314号