TL;DR
- 플렉스 아이템의 너비를 플렉스 컨테이너의 너비에서 n 분할한 값으로 지정한다
- 플렉스 아이템의 너비가 고정되었으므로 이미지 컨테이너는 너비를 100% 사용하고 비율(aspect-ratio)을 1:1로 지정한다
설명
- Q. 모든 플렉스 아이템의 너비를 어떻게 동일하게 만들지? (ex. 3분할)
- 플렉스 아이템의 너비를 부모 너비의 1/3로 나눈다 ⇒
width: calc(100% / 3)
- Q. 모든 플렉스 아이템에 10px 간격(gutter)를 만들려면 어떻게 하지?
- 플렉스 아이템에 margin을 10px을 추가한다 ⇒
margin: 10px - 플렉스 아이템의 너비를 부모 너비의 1/3로 나눈 값에 아이템 3개에 대한 마진(3 * 10px)을 뺀다 ⇒
width: calc(100% / 3 - 30px)
- Q. 이미지의 크기는 제각각이다. 어떻게 동일한 크기로 만들지?
- 이미지를 감싸는 div 컨테이너를 마크업에 추가한다
- 플렉스 아이템의 너비가 이미 부모 너비의 3분할로 나뉘었으므로 이미지 컨테이너는 전체 너비를 사용한다 ⇒
width: 100% - 이미지 컨테이너의 비율을 1:1로 지정한다 ⇒
aspect-ratio: 1 / 1;