css实现一个暗黑迷你键盘输入效果代码

代码语言:html

所属分类:布局界面

代码描述:css实现一个暗黑迷你键盘输入效果代码

代码标签: css 键盘 输入 迷你

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>

<html lang="en">

<head>

   
<meta charset="UTF-8">





   
<style>
       
:root {
         
--gap: 15px;
         
--key-width: 50px;
       
}
       
        body
{
         
margin: 0;
         
overflow: hidden;
         
background-color: #0a0a0a;
         
height: 100vh;
         
display: flex;
         
align-items: center;
         
justify-content: center;
         
-webkit-user-select: none;
             
-moz-user-select: none;
             
-ms-user-select: none;
                 
user-select: none;
       
}
       
       
.keyboard {
         
display: inline-flex;
         
flex-direction: column;
         
padding: var(--gap);
         
border-radius: 17.5px;
         
transform-style: preserve-3d;
         
perspective: 1200px;
         
transform: perspective(1200px) rotateX(20deg);
       
}
       
       
.row {
         
display: flex;
         
transform-style: preserve-3d;
       
}
       
.row + .row {
         
margin-top: var(--gap);
       
}
       
       
.keyboard,
       
.key {
         
background: #141414;
         
border: 2px solid rgba(64, 64, 64, 0.2);
         
box-shadow: -5px -5px 10px rgba(255, 255, 255, 0.01), -2px -2px 6px rgba(255, 255, 255, 0.03), 2px 2px 5px rgba(0, 0, 0, 0.3), 5px 5px 10px rgba(0, 0, 0, 0.3);
       
}
       
       
.key {
         
--width: var(--key-width);
         
--color: hsl(0, 0%, 85%);
         
--size: 1;
         
--size-2: 1.654545;
         
--size-3: 1.981818;
         
--size-4: 2.290909;
         
--size-5: 2.618181;
         
--size-6: 1.327272;
         
--size-7: 7.8;
         
display: flex;
         
align-items: center;
         
justify-content: center;
         
width: calc(var(--width) * var(--size));
         
height: var(--width);
         
border-radius: 7.5px;
         
flex-shrink: 0;
         
box-sizing: border-box;
         
transform: translate3D(0, 0, 30px);
         
transition: 100ms;
         
cursor: pointer;
       
}
       
.key:hover {
         
transform: translate3D(0, 0, 35px);
       
}
       
.key:active, .key[data-selected]:not([data-selected=false]) {
         
transform: translate3D(0, 0, 25px);
         
border-color: var(--color);
         
box-shadow: -5px -5px 10px rgba(255, 255, 255, 0.01), -2px -2px 6px rgba(255, 255, 255, 0.03), 2px 2px 5px rgba(0, 0, 0, 0.3), 5px 5px 10px rgba(0, 0, 0, 0.3), 0px 2px 8px var(--color), 0px 5px 20px var(--color);
       
}
       
.key + .key {
         
margin-left: var(--gap);
       
}
       
.key:before {
         
display: block;
         
content: "";
         
width: 15px;
         
height: 15px;
         
border-radius: 7.5px;
         
background-color: var(--color);
       
}
       
.key.stretch {
         
padding: 0 25px;
       
}
       
.key.stretch:before {
         
width: 100%;
       
}
       
.key.empty:before {
         
display: none;
       
}
       
.key.size-2 {
         
--size: var(--size-2);
       
}
       
.key.size-3 {
         
--size: var(--size-3);
       
}
       
.key.size-4 {
         
--size: var(--size-4);
       
}
       
.key.size-5 {
         
--size: var(--size-5);
       
}
       
.key.size-6 {
         
--size: var(--size-6);
       
}
       
.key.size-7 {
         
--size: var(--size-7);
       
}
       
.key.grey {
         
--color: hsl( 0, 0%, 50%);
       
}
       
.key.red {
         
--color: hsl( 0, 80%, 60%);
       
}
       
.key.orange {
         
--color: hsl( 25, 80%, 60%);
       
}
       
.key.yellow {
         
--color: hsl( 50, 80%, 60%);
       
}
       
.key.green {
         
--color: hsl(150, 80%, 60%);
       
}
       
.key.blue {
         
--color: hsl(210, 80%, 60%);
       
}
       
.key.purple {
         
--color: hsl(270, 80%, 60%);
       
}
       
.key[data-color=grey] {
         
--color: hsl( 0, 0%, 50%);
       
}
       
.key[data-color=red] {
         
--color: hsl( 0, 80%, 60%);
       
}
       
.key[data-color=orange] {
         
--color: hsl( 25, 80%, 60%);
       
}
       
.key[data-color=yellow] {
         
--color: hsl( 50, 80%, 60%);
       
}
       
.key[data-color=green] {
         
--color: hsl(150, 80%, 60%);
       
}
       
.key[data-color=blue] {
         
--color: hsl(210, 80%, 60%);
       
}
       
.key[data-color=purple] {
         
--color: hsl(270, 80%, 60%);
       
}
       
        a
{
         
text-decoration: none;
         
color: inherit;
       
}
       
     
       
   
</style>

</head>

<body>
   
<div class="keyboard">
       
<div class="row">
           
<div class="key orange" data-code="Escape" data-macro="orange"></div>
           
<div class="key" data-code="Digit1"></div>
           
<div class="key" data-code="Digit2"></div>
           
<div class="key" data-code="Digit3"></div>
           
<div class="key" data-code="Digit4"></div>
           
<div class="key" data-code="Digit5"></div>
       .........完整代码请登录后点击上方下载按钮下载查看

网友评论0