纯css实现任天堂游戏机布局效果

代码语言:html

所属分类:布局界面

代码描述:纯css实现任天堂游戏机布局效果

代码标签: 任天堂 游戏机 布局 效果

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


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

<style>
:root {
  --red: #FA4233;
  --blue: #00ABD1;
  --scene-bg: hotpink;
  --switch-width: 77.12vw;
  --switch-height: 32.48vw;
  --switch-body-width: 55.52vw;
  --screen-bg: #030303;
  --screen-body-bg: #2C2E2F;
  --screen-inner-bg: #1E1E1E;
  --screen-reflect-color: rgba(255, 255, 255, 0.1);
  --screen-width: 52.8vw;
  --screen-height: 29.84vw;
  --screen-inner-width: 44.64vw;
  --screen-inner-height: 24.4vw;
  --joycon-width: 10.72vw;
  --joycon-button-bg: #323639;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: sans-serif;
}

.scene {
  width: 100vw;
  height: 100vh;
  background-color: var(--scene-bg);
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}

.switch {
  position: relative;
  width: var(--switch-width);
  height: var(--switch-height);
}

.screen {
  width: var(--screen-width);
  height: var(--screen-height);
  border-radius: 0.48vw;
  background-color: var(--screen-bg);
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}
.screen-body {
  width: var(--switch-body-width);
  height: 100%;
  position: absolute;
  bottom: 0;
  left: var(--joycon-width);
  border-radius: 0.32vw;
  background-color: var(--screen-body-bg);
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}
.screen-body::before, .screen-body::after {
  content: "";
  width: 0.8vw;
  height: 1.28vw;
  position: absolute;
  top: 0;
  z-index: 1;
  background-color: var(--scene-bg);
}
.screen-body::before {
  left: 0;
  border-bottom-right-radius: 0.32vw;
}
.screen-body::after {
  right: 0;
  border-bottom-left-radius: 0.32vw;
}
.screen-inner {
  width: var(--screen-inner-width);
  height: var(--screen-inner-height);
  background-color: var(--screen-inner-bg);
  background-image: linear-gradient(-45deg, transparent 0%, transparent 10%, var(--screen-reflect-color) 10%, var(--screen-reflect-color) 20%, transparent 20%, transparent 30%, var(--screen-reflect-color) 30%, var(--screen-reflect-color) 40%, transparent 40%, transparent 50%, var(--screen-reflect-color) 50%, var(--screen-reflect-color) 60%, transparent 60%, transparent 70%, var(--screen-reflect-color) 70%, var(--screen-reflect-color) 80%, transparent 80%, transparent 90%, var(--screen-reflect-color) 90%);
}

.joycon {
  width: var(--joycon-width);
  height: 100%;
  position: absolute;
  top: 0;
  z-index: 1;
}
.joycon.is-red {
  background-color: var(--red);
}
.joycon.is-blue {
  background-color: var(--blue);
}
.joycon.is-left {
  left: 0;
  border-radius: 5.76vw 0.32vw 0.32vw 5.76vw;
}
.joycon.is-right {
  left: calc(var(--joycon-width) + var(--switch-body-width));
  border-radius: 0.32vw 5.76vw 5.76vw 0.32vw;
}

.joycon-button-group {
  width: 6.8vw;
  height: 6.8vw;
  position: absolute;
}
.joycon-button-group.arrows {
  bottom: 11.36vw;
  right: 1.2vw;
}
.joycon-button-group.letters {
  top: 4.32vw;
  left: 1.2vw;
}

.joycon-button {
  position: absolute;
  font-size: 1.12vw;
  line-height: 1;
  color: #D7DBE1;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 2.4vw;
  height: 2.4vw;
  border-radius: 50%;
  background-color: var(--joycon-button-bg);
  -webkit-perspective: 500px;
          perspective: 500px;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}
.........完整代码请登录后点击上方下载按钮下载查看

网友评论0