HTML/CSS_Flex와 Grid

jjyu_my·2024년 2월 25일

HTML & CSS

목록 보기
13/19
post-thumbnail

📌Flexbox 란?

공식적으로는 Flexible Box Layout이라고 불리며, 주로 1차원 레이아웃을 위해 설계되었습니다.
즉, 행이나 열 한 방향으로의 요소 배치에 최적화되어 있습니다.

1️⃣ 장점

  • 유연성: 요소들이 컨테이너 공간에 맞게 유연하게 확장 또는 축소됩니다.
  • 간단한 중앙 정렬: 수평 및 수직 정렬이 매우 간단하게 구현됩니다.
  • 반응형 디자인 용이: 다양한 화면 크기에 따라 요소를 쉽게 조정할 수 있어 반응형 웹 디자인에 적합합니다.

2️⃣ 사용사례

  • 항목들을 일렬로 나열할 때 (예: 메뉴 바, 항목 리스트)
  • 요소를 수직 또는 수평 중앙에 배치할 때
  • 동적으로 크기가 변하는 컨테이너 내 요소 배치

📌Grid 란?

Grid Layout은 2차원 레이아웃을 위해 설계되었습니다.
행과 열을 동시에 제어할 수 있어 복잡한 레이아웃을 구현하는 데 매우 강력합니다.

1️⃣ 장점

  • 2차원 레이아웃: 행과 열을 기반으로 복잡한 레이아웃을 쉽게 구성할 수 있습니다.
  • 레이아웃 정밀 제어: 그리드 선, 영역, 간격 등을 통해 요소의 정확한 배치를 제어할 수 있습니다.
  • 복잡한 레이아웃 구현: 다양한 크기와 배치를 가진 요소들을 포함하는 복잡한 구조도 구현 가능합니다.

2️⃣ 사용 사례

  • 복잡한 페이지 레이아웃 (예: 신문 레이아웃, 매거진 레이아웃)
  • 격자 형태의 UI 구성 (예: 이미지 갤러리, 카드 레이아웃)
  • 정밀한 위치 조정이 필요한 인터페이스 요소 배치

💡 Flexbox vs Grid: 언제 어떤 것을 사용해야 할까?

Flexbox 사용: 요소를 한 방향(수평 또는 수직)으로 배치하려는 경우, 또는 간단한 레이아웃에서 요소들 사이의 공간을 동적으로 조절하고 싶을 때 적합합니다.
Grid 사용: 더 복잡하고 다차원적인 레이아웃을 구현하고 싶거나, 행과 열을 모두 제어해야 할 때 유리합니다. 또한, 디자인이 그리드 기반으로 명확하게 정의되어 있을 때 선택하는 것이 좋습니다.


profile

0개의 댓글