아래는 CSS Flexbox, Grid, 배치 우선순위에 대한 내용을 정리한 내용입니다.
Flexbox는 CSS의 레이아웃 모듈 중 하나로, 복잡한 레이아웃을 간단하게 만들 수 있도록 도와줍니다.
flex-direction
: 주 축의 방향을 설정합니다.justify-content
: 주 축을 따라 아이템을 정렬합니다.align-items
: 교차 축을 따라 아이템을 정렬합니다.flex-wrap
: 아이템의 줄 바꿈을 설정합니다.예시: Flexbox 사용
.flex-container {
display: flex;
justify-content: space-around;
}
Grid는 2차원 레이아웃을 구성할 수 있는 강력한 CSS 모듈입니다. 행과 열로 구성된 그리드 시스템을 사용하여 복잡한 레이아웃을 쉽게 만들 수 있습니다.
grid-template-columns
: 열의 크기를 설정합니다.grid-template-rows
: 행의 크기를 설정합니다.grid-gap
: 그리드 아이템 간의 간격을 설정합니다.예시: Grid 사용
.grid-container {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 10px;
}
CSS에서 요소의 배치 우선순위는 z축을 기준으로 하며, 요소가 다른 요소 위에 겹쳐 보일 때 어떤 요소가 위에 위치할지를 결정합니다.
Stacking context는 요소가 쌓이는 방식에 대한 특정 규칙을 적용하는 환경입니다. 새로운 stacking context는 아래와 같은 경우에 생성됩니다:
position
속성이 relative
, absolute
, fixed
, 또는 sticky
가 설정되고 z-index
값이 설정된 경우opacity
값이 0보다 작은 경우transform
, filter
, perspective
속성이 설정된 경우z-index
속성은 요소의 쌓임 순서를 설정합니다. 값이 높을수록 위에 쌓입니다.
z-index
값에 따라 정렬.