학습 목표
- HTML과 CSS를 활용하여 만들고자 하는 웹 애플리케이션의 레이아웃을 구성할 수 있다.
- Flexbox속성을 이용하여 자식 요소를 정렬할 수 있다.
- 자식 요소에 flex 속성을 추가하여 부모 요소에서 각각의 자식 요소가 차지하는 비중을 조절할 수 있다.
<body>
<div id="calculator"> // 전체 container 역할을 하는 id를 지정
<div class="calculator-result-display">0</div> // display에 기본값으로 숫자 0이 출력된다.
<div class="calculator-buttons"> // result-display와 구분하기 위해전체 button 영역을 설정
<div class="button-ac-enter"> // clear enter button을 구분하는 영역을 설정
<button class="button-ac">AC</button>
<button class="button-enter">ENTER</button>
</div>
<div class="button-in-row"> // button 4개를 한 줄에 담을 수 있는 영역 설정
<button class="number">7</button> // 숫자 button을 number class로 설정
<button class="number">8</button>
<button class="number">9</button>
<button class="operator">+</button> // 연산자 button을 operator class로 설정
</div>
<div class="button-in-row">
<button class="number">4</button>
<button class="number">5</button>
<button class="number">6</button>
<button class="operator">-</button>
</div>
<div class="button-in-row">
<button class="number">1</button>
<button class="number">2</button>
<button class="number">3</button>
<button class="operator">*</button>
</div>
<divc class="button-in-row">
<button class="number-zero">0</button> // 다른 button과 크기가 다르기 때문에 따로 number-zero class로 설정
<button class="decimal">.</button> // 숫자나 연산자 버튼과 다른 기능을 하므로 decimal class로 설정
<button class="operator">/</button>
</div>
</div>
</div>
</body>
* 코드는 부분만 캡쳐
.calculator-buttons
에 column
을 적용하여 2~4개의 버튼을 감싸고 있는 div class button-ac-enter
, button-in-row
을 세로축으로 정렬함row
를 사용하여 가로축으로 정렬함flex-grow: 1;
을 적용하고 비율에 따라 2까지 적용flex-basis
에 너비를 정함