레이아웃을 설계하고, 와이어프레임을 그려 하드코딩 해보면서 느낀 점은
첫 설계 단계가 굉장히 중요하다는 것이다.
html / css 한정, 퍼블리싱은 아무리 페이지가 복잡해 보여도
큰 단위로 시작해 작은 단위로 쪼개가며 차근차근 설계하면 해낼 수 있을 것 같다.
html의 시멘틱 태그라던지 css의 디자인 등은 그 다음 문제고,
결국 직접 많이 해봐야 경험치가 많이 쌓이는 영역인 것 같다.
display : flex
를 적용하면 간단하게 왼쪽부터 차례대로 자식 박스를 가로 배치 할 수 있다. (default값)flex-direction : row
: display : flex의 기본 값으로 자식 요소들을 가로배치한다.flex-direction : column
: 자식 요소들을 세로 배치한다.주 축(Main-axis)의 정렬 방법을 설정한다.
주 축(Main-axis)이 row일 때는 가로, column일 때 세로라고 생각하면 편하다.
justify-content : flex-start
: items를 시작점(flex-start)으로 정렬justify-content : flex-end
: items를 끝점(flex-end)으로 정렬justify-content : center
: itmes를 가운데 정렬justify-content : space-between
: 시작 item은 시작점에, 마지막 item은 끝점에 정렬되고 나머지 items는 사이에 고르게 정렬됨justify-content : space-around
: items를 균등한 여백을 포함하여 정렬<주 축(Main-axis)이 row일 경우 예시>
교차 축(cross-axis)의 정렬 방법을 설정한다.
교차 축(cross-axis)이 column일 때는 세로, row일 때 가로라고 생각하면 편하다.
align-items : stretch
: Container의 교차 축을 채우기 위해 Items를 늘림align-items : flex-start
: items를 시작점(flex-start)으로 정렬align-items : flex-end
: items를 각 줄의 끝점(flex-end)으로 정렬align-items : center
: items를 가운데 정렬align-items : baseline
: items를 문자 기준선에 정렬<교차 축(cross-axis)이 column인 경우 예시>
설명 이미지 출처 : HEROPY blog (이해하기 쉬운 설명 감사합니다 꾸벅)
🍫 flex의 하위속성(grow, shrink, basis 등) 은 따로 정리하여 다시 포스팅 할 예정