[Html, Css, JavaScript] Calculator

Chaewon Yoon (Jamie)·2022년 7월 31일

mini project for fun!

목록 보기
2/3
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Calculator</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <div class="calculator">
    <form name="forms">
      <input type="text" name="output" readonly>
      <input type="button" class="clear" value="C" onclick="document.forms.output.value=''">
      <input type="button" class="operator" value="/" onclick="document.forms.output.value+='/'">
      <input type="button" value="1" onclick="document.forms.output.value+='1'">
      <input type="button" value="2" onclick="document.forms.output.value+='2'">
      <input type="button" value="3" onclick="document.forms.output.value+='3'">
      <input type="button" class="operator" value="*" onclick="document.forms.output.value+='*'">
      <input type="button" value="4" onclick="document.forms.output.value+='4'">
      <input type="button" value="5" onclick="document.forms.output.value+='5'">
      <input type="button" value="6" onclick="document.forms.output.value+='6'">
      <input type="button" class="operator" value="+" onclick="document.forms.output.value+='+'">
      <input type="button" value="7" onclick="document.forms.output.value+='7'">
      <input type="button" value="8" onclick="document.forms.output.value+='8'">
      <input type="button" value="9" onclick="document.forms.output.value+='9'">
      <input type="button" class="operator" value="-" onclick="document.forms.output.value+='-'">
      <input type="button" class="dot" value="." onclick="document.forms.output.value+='.'">
      <input type="button" value="0" onclick="document.forms.output.value+='0'">
      <input type="button" class="operator result" value="=" onclick="document.forms.output.value=eval(document.forms.output.value)">
    </form>
  </div>
</body>
</html>
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: #1f1f1f;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

.calculator {
    width: 287px;
    border: 1px solid #333;
    background-color: #ccc;
    padding: 5px;
}

.calculator form {
    display: grid;
    grid-template-columns: repeat(4, 65px);
    grid-auto-rows: 65px;
    grid-gap: 5px;
}

.calculator form input {
    border: 2px solid #333;
    cursor: pointer;
    font-size: 19px;
}

.calculator form input:hover {
    box-shadow: 1px 1px 2px #333;
}

.calculator form .clear {
    background-color: #ed4848;
}

.calculator form .operator {
    background-color: orange;
}

.calculator form .dot {
    background-color: green;
}

.calculator form input[type='text'] {
    grid-column: span 4;
    text-align: right;
    padding: 0 10px;
}

.calculator form .clear {
    grid-column: span 3;
}

.calculator form .result{
    grid-column: span 2;
}

TIL
1. html로 뼈대 잡기 (input type을 text와 button으로 나눠 생성)
2. css 꾸밀 때 총 픽셀 계산해서 너비 넣기
3. 예쁜 색상들을 많이 사용해서 좋았다.
4. hover 됐을 때 box-shadow 넣는 것

profile
keep growing as a web developer!🧃

0개의 댓글