icon

메티의 블로그

Margin Collapsing

Margin Collapsing

summary
Margin Collapsing은 여러 요소의 위아래 마진이 가장 큰 마진 값을 가진 요소의 마진으로 합쳐지는 현상입니다. 이 현상이 발생하는 상황에 대한 설명이 이어질 것으로 보입니다.
Tags
CSS
view_count
날짜
Feb 6, 2023
상태
공개
Margin Collapsing 이란?
notion image
여러 요소의 위 아래 마진은 가장 큰 마진 값을 가지는 요소의 마진에 합쳐지는 경우가 종종 생기는데, 이를 Margin Collapsing 이라고 한다.
 
Margin Collapsing 은 언제 일어날까?
  1. floating 이나 absolute position 의 요소들은 절대 Margin Collapsing 이 생기지 않는다.
 
  1. 인접 형제 요소
    1. 인접한 형제 요소의 마진은 합쳐진다.
       
  1. 부모와 자손을 분리하는 컨텐츠가 없을 때
    1. 부모 블록에 border, padding, inline part 가 없고, block formatting context 생성되지 않았으며, 부모의 margin-top 을 자손의 margin-top 과 분리할 clearance 가 없는 경우
      (= 부모 요소와 최 상단 자식 요소의 상단 마진이 겹칠 때)
      또는
      부모 요소에 border, padding, inline content가 없고, 부모의 margin-bottom 과 자손의 margin-bottom 을 분리할 높이, 최소 높이, 최대 높이가 존재하지 않는 경우 부모와 자손의 마진이 합쳐진다.
      (= 부모 요소와 최 하단 자식 요소의 하단 마진이 겹칠 때)
       
      합쳐진 마진은 부모 블록 바깥에 위치한다.
       
  1. 빈 요소
    1. border, padding, inline content 이 없고, margin-top 과 margin-bottom을 나눌 height, min-height이 없는 경우 위 아래의 마진이 합쳐진다.