[HTML/CSS/Javascript]簡易計算機

28380 ワード

🔥 HTML/CSS/Javascriptを使用した単純計算機の作成
🔥 けいさんき
1. 📖 スケルトンの作成&エフェクトの追加
✍ code
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Calculator</title>
    <link rel="stylesheet" href="css/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>
formラベル->inputラベル(インタラクションが必要な場合に使用します.通常はbuttonラベルとして使用できます).
「=」のclassは演算子で、resultが2つあります.eval関数は実際の計算を許可する関数です
2. 📖 に飾りを付ける
✍ code
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: #1f1f1f;
    display: flex;
    justify-content: center; 
    align-items: center; /*  justify-content와 수직 방향의 정렬  */
    height: 100vh;
}

.calculator {
    width: 285px;
    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;
    font-style: bold;
}

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

.calculator form .clear {
    background-color: #ed4848;
    grid-column: span 3 ;
}

.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: 10px;
}

.calculator form .result {
    grid-column: span 2;
}
クラスは?クラス名として作成し、タグに適用するには.「クラス名」「タグ名」として記述されます.
display: flex
display: flex;
justify-content: center 
主軸方向に項目を位置合わせ(中央)
 align-items: center;
 height: 100vh;
vided-コンテンツと垂直方向の位置合わせ
リファレンス映像