css实现一个四位比特加法计算器效果代码
代码语言:html
所属分类:布局界面
代码描述:css实现一个四位比特加法计算器效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
@import url(https://fonts.googleapis.com/css?family=Roboto);
html {
width: 100vw;
height: 100vh;
}
html body {
width: 100%;
height: 100%;
display: flex;
box-sizing: border-box;
}
html body *, html body *::before, html body *::after {
box-sizing: inherit;
}
.container {
--width: 50vmin;
width: var(--width);
--height: 50vmin;
height: var(--height);
margin: auto;
position: relative;
transform: translatex(12.5%);
font: 15vmin "Roboto";
--CARRY1: initial;
--NOT-CARRY1: ;
}
.container > .level > .bit {
grid-area: a1;
}
.container > .level > .level > .bit {
grid-area: a2;
}
.container > .level > .level > .level > .bit {
grid-area: a3;
cursor: initial;
z-index: -1;
border-top: 1px solid black;
}
.container > .level > .level > .level > .level > .bit {
grid-area: a4;
}
.container > .level > .level > .level > .level > .level > .bit {
grid-area: a5;
}
.container > .level > .level > .level > .level > .level > .level > .bit {
grid-area: a6;
cursor: initial;
z-index: -1;
border-top: 1px solid black;
}
.container > .level > .level > .level > .level > .level > .level > .level > .bit {
grid-area: a7;
}
.container > .level > .level > .level > .level > .level > .level > .level > .level > .bit {
grid-area: a8;
}
.container > .level > .level > .level > .level > .level > .level > .level > .level > .level > .bit {
grid-area: a9;
cursor: initial;
z-index: -1;
border-top: 1px solid black;
}
.container > .level > .level > .level > .level > .level > .level > .level > .level > .level > .level > .bit {
grid-area: a10;
}
.container > .level > .level > .level > .level > .level > .level > .level > .level > .level > .level > .level > .bit {
grid-area: a11;
}
.container > .level > .level > .level > .level > .level > .level > .level > .level > .level > .level > .level > .level > .bit {
grid-area: a12;
cursor: initial;
z-index: -1;
border-top: 1px solid black;
}
.container > .level > .bit + .level {
--A1: initial;
--NOT-A1: ;
}
.container > .level > .bit:checked + .level {
--A1: ;
--NOT-A1: initial;
}
.container > .level > .level > .bit + .level {
--B1: initial;
--NOT-B1: ;
}
.container > .level > .level > .bit:checked + .level {
--B1: ;
--NOT-B1: initial;
}
.container > .level > .level > .level {
--NA1andB1: var(--NOT-A1) var(--B1);
--A1andNB1: var(--A1) var(--NOT-B1);
--A1xorB1: var(--NA1andB1, var(--A1andNB1));
--SUM1: var(--A1xorB1);
--A1andB1: var(--A1) var(--B1);
--NA1andNB1: var(--NOT-A1) VAR(--NOT-B1);
--A1xnorB1: var(--A1andB1, var(--NA1andNB1));
--NOT-SUM1: var(--A1xnorB1);
--NS1andC1: var(--NOT-SUM1) var(--CARRY1);
--S1andNC1: var(--SUM1) var(--NOT-CARRY1);
--S1xorC1: var(--NS1andC1, var(--S1andNC1));
--FULL-SUM1: var(--S1xorC1);
--A1andB1: var(--A1) var(--B1);
--S1andC1: var(--SUM1) var(--CARRY1);
--A1B1orS1C1: var(--A1andB1, var(--S1andC1));
--CARRY2: var(--A1B1orS1C1);
--NA1orNB1: var(--NOT-A1, var(--NOT-B1));
--NS1orNC1: var(--NOT-SUM1, var(--NOT-CARRY1));
--NA1orNB1andNS1orNC1: var(--NA1orNB1) var(--NS1orNC1);
--NOT-CARRY2: var(--NA1orNB1andNS1orNC1);
}
.container > .level > .level > .level > .bit::before {
--T: var(--FULL-SUM1) "1";
--F: var(--FULL-SUM1, "0");
content: var(--T, var(--F));
}
.container > .level > .level > .level > .level > .bit + .level {
--A2: initial;
--NOT-A2: ;
}
.container > .level > .level > .level > .level > .bit:checked + .level {
--A2: ;
--NOT-A2: initial;
}
.container > .level > .level > .level > .level > .level > .bit + .level {
.........完整代码请登录后点击上方下载按钮下载查看
网友评论0