div+css实现游戏按钮点击动画效果代码

代码语言:html

所属分类:其他

代码描述:div+css实现游戏按钮点击动画效果代码

代码标签: div css 游戏 按钮 点击 动画

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

<!DOCTYPE html>
<html lang="en" >

<head>
  <meta charset="UTF-8">
  

  
  
<style>
:root {
  --surface: #271C22;
  --primary: #FFD600;
  --secondary: #99CFD4;
  --secondary-variant: #4A46BA;
  --tertiary: #D52B5D;
  --tertiary-variant: #4A2832;
  --dot:#D0ABB8;
  --ghost-1: #D0ABB8;
  --ghost-2: #DDA445;
  --ghost-3: #99CFD4;
  --ghost-4: #E0161A;
  --ghost-variant: #4A46BA;
}

arcade-machine {
  display: grid;
  place-items: center;
  border-bottom-left-radius: 10rem;
  border-bottom-right-radius: 10rem;
  width: 100vw;
  height: 100vh;
  background: linear-gradient(to bottom, #AB1740, #CB2057);
  position: relative;
}
arcade-machine:before {
  content: "";
  background: linear-gradient(to bottom, #DC3362, #CB2057);
  box-shadow: -0.0825rem 0.1rem 1rem 0.0625rem rgba(70, 8, 17, 0.4), -0.0625rem 0.1rem 0 rgba(131, 30, 61, 0.34), 0.0625rem 0.1rem 0 rgba(131, 30, 61, 0.34);
  position: absolute;
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit;
  top: 0;
  left: 2rem;
  right: 2rem;
  bottom: 1.5rem;
}
arcade-machine:after {
  content: "";
  background: linear-gradient(to bottom, #DC3362, #CB2057);
  box-shadow: -0.0625rem 1rem 0.4rem #CB2057, 0.0625rem 1rem 0.4rem #CB2057;
  position: absolute;
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit;
  top: 50%;
  left: 2rem;
  right: 2rem;
  bottom: 1.5rem;
}

arcade-machine-title {
  display: flex;
  aspect-ratio: 4.8/20;
  height: min(20rem, 35vh);
  border-bottom-left-radius: 10rem;
  border-bottom-right-radius: 10rem;
  position: absolute;
  left: 4rem;
  top: 0;
  background: url(//repo.bfw.wiki/bfwrepo/icon/637977059b93a.png) center center no-repeat, linear-gradient(to bottom, #CD1E4F, #C0134B 20%);
  background-size: contain;
  padding: 0.5rem;
  background-origin: content-box;
  box-shadow: inset -0.0625rem 0 0 rgba(131, 30, 61, 0.34), inset 0.0625rem 0 0 rgba(131, 30, 61, 0.34), inset 0 -0.2rem 0.8rem rgba(0, 0, 0, 0.15);
}

arcade-button {
  z-index: 1111111;
  display: flex;
  align-items: center;
  color: var(--primary);
  border-radius: 10rem;
  width: 20rem;
  height: 7rem;
  position: relative;
  overflow: hidden;
  -webkit-animation: progress 2s linear infinite;
          animation: progress 2s linear infinite;
  transition: border 0.3s linear;
  --border-color: var(--secondary);
  border: 0.375rem solid var(--border-color);
  text-transform: uppercase;
  box-shadow: -0.0625rem -0.0625rem 0.125rem rgba(255, 255, 255, 0.25), -0.125rem -0.125rem 0.8125rem rgba(231, 135, 164, 0.15), -0.25rem -0.25rem 1.1875rem 0.3125rem #DD6589, 0.25rem 0.25rem 0.1875rem #7E233E, 0.25rem 0.25rem 1.5rem 0.4375rem #951D41;
  background: var(--surface);
}
@media (hover) {
  arcade-button:hover {
    border-color: var(--tertiary);
    border-width: 0.75rem;
    cursor: pointer;
  }
  arcade-button:hover:after, arcade-button:hover walls, arcade-button:hover dots, arcade-button:hover dots-v {
    margin: -0.375rem;
  }
}
arcade-button:active {
  border-color: var(--tertiary-variant);
  border-width: 0.5rem;
  cursor: pointer;
}
arcade-button:active:after {
  margin: -0.125rem;
}
arcade-button:before {
  content: "";
  position: absolute;
  inset: 0;
  -webkit-animation: content-placeholder-animation var(--content-placeholder-animation-duration, 1.5s) ease 2 forwards;
          animation: content-placeholder-animation var(--content-placeholder-animation-duration, 1.5s) ease 2 forwards;
  background: transparent linear-gradient(to right, transparent 0, transparent calc(10% - 6.25rem), color-mix(in srgb, var(--tertiary-variant), transparent 15%) 50%, transparent calc(50% + 6.25rem), transparent 100%) center left;
  background-size: 100% 100%;
}
arcade-button:after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(transparent 40%, var(--surface)) repeat;
  z-index: 120;
  background-size: 0.25rem 0.25rem;
  transition: margin 0.3s linear;
}
arcade-button input {
  display: none;
  z-index: 111;
}
arcade-button input:not(:checked) ~ *:not(arcade-button-text):not(.audio) {
  display: none;
  transition: all 0.3s ease;
  opacity: 1;
}
arcade-button input:not(:ch.........完整代码请登录后点击上方下载按钮下载查看

网友评论0