CSS에서 요소를 중앙에 배치하는 다양한 방법

7607 단어 htmlcssfrontendui
안녕하세요 개발자 여러분!!

다양한 방법을 사용하여 CSS에서 요소를 중앙에 배치하는 방법을 살펴보겠습니다.

모든 예제에 대해 아래 html을 일반적인 것으로 사용합니다.

<div class="parent">
   <div class="child"></div>
</div>

위치 사용



.parent {
   position: relative;
}
.child { 
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

위치에 여백 사용



여백: 자동은 수평 정렬에만 적용됩니다.
그러나 아래 코드를 사용하여 양방향으로 작동하도록 만들 수 있습니다.

.parent {
   position: relative;
}
.child { 
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
//by giving top,left,right,bottom values as 0 now child's width and height is exact to parent.
   width: 800px; //assuming random width
   height: 200px; //assuming random height
   margin: auto; //margin auto works for both vertical and horizontal alignments
}

플렉스 사용



.parent {
   display: flex;
   align-items: center;
   justify-content: center;
}

그리드 사용



.parent {
    display: grid;
    justify-content: center;
    align-items: center;
}

테이블 사용



.parent {
   display: table;
   width: 100px;
   height: 100px;
}
.child {
   display: table-cell;
   vertical-align: middle;
   width: 50px;
   height: 50px;
   text-align: center;
}

text-align을 사용하여 가로로 가운데 맞춤



.parent {
   display: block;
   text-align: center;
} 
.child {
   display: inline-block; //key point
}

line-height를 사용하여 세로로 가운데에 맞추기



한 줄만 있으면 잘 작동합니다.

.parent {
   height: 200px;
}
.child {
   line-height: 200px; //same value of parent height
}

여백을 자동으로 사용하여 수평으로 가운데 맞추기



.child {
   width: 50%;
   margin: 0 auto;
}

좋은 웹페이지 즐겨찾기