>웹 프론트엔드 >CSS 튜토리얼 >CSS를 사용하여 수직 중앙 정렬을 구현하는 7가지 방법 공유

CSS를 사용하여 수직 중앙 정렬을 구현하는 7가지 방법 공유

高洛峰
高洛峰원래의
2017-03-21 17:10:541572검색

오늘은 순수 CSS를 사용하여 수직 중앙 정렬을 구현하기 위해 제가 본 다양한 방법에 대해 알려드리겠습니다. 왜 이것을 첫 번째 기사로 만드나요? 이것은 제가 처음 프론트엔드 작업을 시작했을 때 배운 가장 유용한 지식이기 때문에 모든 분들도 이로부터 혜택을 받을 수 있기를 바랍니다!

CSS에서 가로 가운데 정렬을 구현하는 것은 매우 간단합니다. 인라인 요소는 상위 요소의 text-align:center를 설정하고 블록 수준 요소는 magrin:auto를 자체적으로 적용합니다. 그러나 수직 센터링을 달성하는 것은 우선 매우 일반적인 요구 사항이지만 실제로는 달성하기 어려운 경우가 많습니다. 특히 디자인 크기가 고정되어 있지 않은 경우 더욱 그렇습니다. 내가 찾은 몇 가지 방법은 다음과 같습니다.

방법 1: Line-heightline-height

(1) 한 줄 텍스트 중심

HTML 코드

<p class="box1">
<p class="box2">垂直居中</p>
</p>

CSS 코드

 .box1{
   height: 200px;
 }
 .box2{
  line-height: 200px;
 }

(2)이미지세로 중앙

HTML 코드

 <p class="box1">
   <img src="images/bg-sun.png" alt="">
 </p>

CSS 코드

 .box1{
   line-height:200px;
 }
 .box1 img{
   vertical-align: middle;
 }

방법 2: table-cell

CSS 코드

 .box1{
   display: table-cell;
   vertical-align: middle;
   text-align: center;
 }

방법 3: display:flex

(1) CSS 코드

 .box1{
   display: flex;
 }
 .box2{
   margin:auto;
 }

(2) CSS 코드

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

방법 4: 절대 위치 지정 및 음수 여백

(1) CSS 코드

 .box1{ 
   position: relative; 
 } 
   .box2{ 
   position: absolute; 
   top: 50%; 
   left: 50%; 
   margin-top: -10px;/*减去子元素高度一半*/ 
   margin-left:-32px;/*减去子元素宽度一半*/
 }

(2) CSS 코드

 .box2{
   position: absolute;
   top:calc(50% - 10px);/*减去子元素高度一半*/
   left:calc(50% - 32px);/*减去子元素宽度一半*/
 }

방법 5: 절대 위치 지정 및 0

CSS 코드

 .box2{
   width: 50%;
   height: 50%;
   background: #555;
   overflow: auto;
   margin: auto;
   position: absolute;
   top: 0; left: 0; bottom: 0; right: 0;
     }

방법 6: 번역

(1) CSS 코드

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

(2) HTML 코드

 <body>
 <p class="box1">
 </p>
 </body>

CSS 코드

 .box1{
   width: 200px;
   height: 200px;
   background: #666;
   margin: 50vh auto 0;
   transform: translateY(-50%);
 }

방법 7: display:-webkit-box

CSS 코드

 .box2{
   display: -webkit-box;
   -webkit-box-pack:center;
   -webkit-box-align:center;
   -webkit-box-orient: vertical;
   text-align: center7 }

위 내용은 CSS를 사용하여 수직 중앙 정렬을 구현하는 7가지 방법 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.