인라인 블록 요소 간 간격 문제 해결 방법
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- *웹 개발자**
- 중급 이상의 CSS 이해를 가진 개발자에게 유용
inline-block
레이아웃 구현 시 간격 문제 해결 방법을 학습하고자 하는 자
핵심 요약
- Whitespace 또는 line-height가
inline-block
요소 간 간격 발생의 주요 원인 flex
레이아웃 사용 또는 font-size: 0 설정으로 간격 제거 가능margin
또는negative margin
조정도 효과적인 해결 방법
섹션별 세부 요약
- 문제 발생 원인
- HTML 마크업 내 Whitespace (공백, 개행)가 브라우저에서 공간으로 해석
line-height
또는margin
설정이 간격에 영향- 예시:
요소 간 공백이 렌더링 시 간격으로 반영
- CSS 속성 영향 분석
vertical-align
이 요소 정렬에 영향line-height
값이 너무 클 경우 추가 간격 생성margin
또는padding
이 0으로 설정되어도 whitespace로 인한 간격 발생 가능
- 해결 방법 1: HTML 공백 제거
- 요소를 동일한 줄에 배치하여 공백 제거
- 예시: AB
- 단점: HTML 가독성 저하
- 해결 방법 2: CSS 속성 조정
- 부모 컨테이너
font-size: 0
설정 후 자식 요소에 원하는font-size
재설정 .parent { font-size: 0; }
.text { font-size: 16px; }
margin-left: -4px
음수 마진 사용 (간격 크기에 따라 조정)
- 해결 방법 3: Flexbox 사용
display: flex
적용으로inline-block
대체.parent { display: flex; }
.text { margin: 0; }
- 자동 정렬 및 간격 관리 가능
결론
- Flexbox 사용이 가장 간결하고 안정적인 해결 방법
inline-block
레이아웃 사용 시font-size: 0
및margin
조정으로 간격 제거 가능- HTML 마크업의 공백 제거는 가독성 저하로 권장하지 않음