CSS

Flexbox

lshjju 2026. 2. 20. 14:07

현대 웹 디자인에서 가장 널리 쓰이는 레이아웃 시스템인 **플렉스박스(Flexbox)**의 기본 개념을 정리해 드리겠습니다.


1. 정의 (Definition)

**플렉스박스(Flexbox)**는 'Flexible Box'의 줄임말로, 행(Row) 또는 열(Column)을 주축으로 하여 요소를 배치하는 1차원 레이아웃 모델입니다.

복잡한 계산 없이도 요소의 크기를 유동적으로 조절하고, 정렬하며, 빈 공간을 배분할 수 있도록 설계된 인터페이스입니다.


2. 특징 및 장점 (Key Features & Advantages)

  • 방향의 자유로움: 가로(행) 또는 세로(열) 중 원하는 방향으로 요소를 쉽게 나열할 수 있습니다.
  • 유동적인 크기: 컨테이너의 크기에 맞춰 자식 요소들의 너비나 높이를 자동으로 늘리거나 줄일 수 있습니다.
  • 간편한 정렬: 과거 float이나 inline-block으로 구현하기 힘들었던 '수직 중앙 정렬'이나 '균등 분할'을 단 한 줄의 코드로 해결합니다.
  • 순서 변경: HTML 구조를 바꾸지 않고도 CSS 속성만으로 화면에 보이는 요소의 순서를 뒤바꿀 수 있습니다.

3. 용어 설명 (Terminology)

플렉스박스를 제대로 다루기 위해서는 두 가지 핵심 영역과 축(Axis)의 개념을 이해해야 합니다.

1) 주체(Entities)

  • Flex Container (부모): display: flex;가 적용된 요소입니다. 자식 요소들을 배치하는 '틀' 역할을 합니다.
  • Flex Item (자식): 컨테이너 안에 담긴 개별 요소들입니다. 부모가 정한 규칙에 따라 움직입니다.

2) 축(Axes)

  • 주축 (Main Axis): 아이템이 배치되는 기본 방향입니다. flex-direction 설정에 따라 가로가 될 수도, 세로가 될 수도 있습니다.
  • 교차 축 (Cross Axis): 주축과 수직을 이루는 축입니다. 주축이 가로라면 교차 축은 세로가 됩니다.

3) 시작점과 끝점 (Start & End)

  • Main Start / Main End: 주축이 시작되고 끝나는 지점입니다.
  • Cross Start / Cross End: 교차 축이 시작되고 끝나는 지점입니다.

📋 플렉스박스 기본 구조 요약표

용어 설명 비고
Flex Container 부모 요소 display: flex 선언 필요
Flex Item 자식 요소 부모 내부에서 정렬되는 대상
Main Axis 주축 아이템 배치의 기준선
Cross Axis 교차 축 주축과 직각을 이루는 축

학습 정리

  • 플렉스박스는 1차원 레이아웃이므로, 한 번에 가로와 세로를 동시에 대규모로 배치할 때는 **그리드(Grid)**가 더 유리할 수 있습니다.
  • 모든 정렬의 기준은 **주축(Main Axis)**이 어디냐에 따라 결정되므로 방향 설정을 가장 먼저 확인해야 합니다.

플렉스박스의 기본 개념과 용어를 완벽히 정리하셨습니다!


'CSS' 카테고리의 다른 글

RWD Image  (0) 2026.02.20
em rem  (0) 2026.02.20
Flex Container property  (0) 2026.02.20
Flex Items property  (0) 2026.02.20
Flex Responsive property  (0) 2026.02.20