CSS의 다양한 센터링 방법에 대해 토론
오늘은 CSS의 다양한 센터링 방법에 대해 주로 이야기하겠습니다.
첫 번째는 가로로 가운데에 두는 것입니다. 물론 가장 간단한 방법은
margin:0 auto;
즉, margin-left 및 margin-right 속성을 auto로 설정하는 것입니다. 수평성을 달성하기 위해 센터링 효과를 얻습니다.
다른 방법은 어떤가요? 하나씩 살펴보겠습니다.
line-height
먼저 텍스트의 가로 가운데 정렬 방법을 소개합니다.
<div class="wrap">刘放</div>
줄 높이를 사용하여 높이로 설정하세요.
.wrap{ line-height: 200px;/*垂直居中关键*/ text-align:center; height: 200px; font-size: 36px; background-color: #ccc; }
효과는 다음과 같습니다.
패딩 채우기
패딩과 배경 사용 -clip을 사용하여 div 수직 센터링 수준 달성:
<div class="parent"> <div class="children"></div> </div>
backgroun-clip을 콘텐츠 상자로 설정하고 배경을 콘텐츠 영역의 바깥쪽 가장자리까지 자른 다음 패딩을 사용하여 절반으로 설정합니다. 외부 div에서 내부 div를 뺀 차이:
.parent{ margin:0 auto; width:200px; height:200px; background-color:red; } .children { width: 100px; height: 100px; padding: 50px; background-color: black; background-clip:content-box;/*居中的关键*/
효과는 다음과 같습니다.
여백 채우기
다음 , 수평 및 수직 센터링을 달성하기 위해 여백 채우기 방법을 소개합니다.
먼저 상위-하위 div를 정의합니다.
< ;/ div>
여기서 하위 div의 margin-top을 상위 div 높이에서 하위 div 높이의 절반을 뺀 값으로 설정한 다음 오버플로를 숨김으로 설정하여 BFC를 트리거합니다. parent div. LESS 코드는 다음과 같습니다.
@parentWidth:200px; @childrenWidth:50px; .parent { margin:0 auto; height:@parentWidth; width:@parentWidth; background: red; overflow:hidden;/*触发BFC*/ } .children { height:@childrenWidth; width:@childrenWidth; margin-left:auto; margin-right:auto; margin-top: (@parentWidth - @childrenWidth) / 2; background:black; }
최종 센터링 효과는 다음과 같습니다.
절대 위치 지정
position:absolute를 위쪽, 왼쪽 50%로 사용하고 여백을 음수 값으로 설정하면 div를 가로 및 세로로 가운데에 배치할 수도 있습니다. 먼저 상위-하위 div를 정의해야 합니다.
<div class="parent"> <div class="children"></div> </div>
그런 다음 해당 CSS를 여백에 설정합니다.
.parent { position:relative; margin:0 auto; width:200px; height:200px; background-color:red; } .children { position:absolute; left:50%; top:50%; margin:-25px 0 0 -25px ; height:50px; width:50px; background-color: black; }
값은 div 너비의 절반입니다. 최종 렌더링은
입니다. text-align centered
우리 모두 알고 있듯이 text-align은 div의 내용을 가로 가운데로 만들 수 있습니다. 하지만 이 div의 중앙에 하위 div를 배치하려면 어떻게 해야 할까요? 하위 div의 표시를 인라인 블록으로 설정할 수 있습니다.
.parent { text-align:center; margin:0 auto; width:200px; height:200px; background:red; } .children { positiona;absolute; margin-top:75px; width:50px; height:50px; background: black; display:inline-block;/*使其父元素text-align生效*/ }
그림 중앙 정렬
일반적인 그림 중앙 정렬은 그림을 div로 감싸고 div의 텍스트 정렬을 중앙으로 설정하는 것과 같습니다.
다음 링크를 참조할 수 있습니다:
개인 사이트
상위 컨테이너가 높이와 너비를 얻을 수 있도록 이미지를 자리 표시자로 사용하여 다음을 허용하는 특별한 방법이 있습니다. 50% 오프셋 이미지에는 백분율 계산을 위한 참조 컨테이너가 있을 수 있습니다. 장점은 이미지의 크기를 알 수 없으며 상위 컨테이너의 크기를 초과하지 않는 이미지를 배치할 수 있으며 중앙에 배치된다는 것입니다. 게다가 호환성도 좋고, IE6도 원활하게 호환됩니다. 코드는 다음과 같습니다.
<div class="parent"> <p> <img class="hidden-img lazy" src="/static/imghw/default1.png" data-src="http://nec.netease.com/img/s/1.jpg" alt="" /> <img class="show-img lazy" src="/static/imghw/default1.png" data-src="http://nec.netease.com/img/s/1.jpg" alt="" /></p> </div>
.parent { position:relative; width:100%; height:200px; background:red; } p { position:absolute; top:50%; left:50%; } .hidden-img { visibility:hidden; } .show-img { position:absolute; right:50%; bottom:50%; }
효과는 다음과 같습니다.
중심 변환
예제에서는 위에서 언급한 div 센터링의 경우 div의 너비는 고정되어 있습니다. 그러나 실제 프로젝트에서는 특히 반응형 디자인이나 모바일 디자인에서 더 일반적인 가변 너비의 div를 접할 수 있습니다. 고정 너비가 필요하지 않은 div를 가로 및 세로로 중앙에 배치하는 방법은 다음과 같습니다.
첫 번째 코드:
<div class="parent"> <div class="children"> <div class="children-inline">我是水平垂直居中噢!</div> </div> </div>
.parent { float: left; width: 100%; height: 200px; background-color: red; } .children { float:left; position:relative; top:50%; left:50%; } .children-inline { position: relative; left: -50%; -webkit-transform : translate3d(0, -50%, 0); transform : translate3d(0, -50%, 0); background-color: black; color:white; }
효과는 다음과 같습니다.
먼저 float를 사용하여 상위 div를 변경합니다. 즉, 자식의 너비가 줄어들고 left:50%는 자식의 왼쪽을 가로 중심선에 정렬합니다. 이때는 아직 중앙에 위치하지 않았으므로 수평 중앙에 위치하도록 children-inner를 왼쪽으로 -50% 이동시켜야 합니다.
세로 방향에 대해 이야기해 보겠습니다. 먼저 어린이의 상단을 50%로 설정한 다음 상단 가장자리를 수직 중심선에 맞춰 정렬합니다. 마찬가지로 어린이 내부도 -50% 위로 이동해야 합니다. 하지만 이 50%는 계산할 수 없으므로 변환을 사용합니다:translate3d(0, -50%, 0)
이 방법은 사용하기 매우 쉽습니다.
flex centering
마지막으로 CSS3의 display:flex로 구현한 가로, 세로 센터링 방식을 소개하겠습니다.
<div class="parent"> <div class="children">我是通过flex的水平垂直居中噢!</div> </div>
html,body{ width: 100%; height: 200px; } .parent { display:flex; align-items: center;/*垂直居中*/ justify-content: center;/*水平居中*/ width:100%; height:100%; background-color:red; } .children { background-color:blue; }
효과는 다음과 같습니다.
이 방법은 가장 간단하지만 호환성이 좋지 않습니다. 가면 갈수록 다양한 주요 브라우저가 모두 호환될 것입니다.
위 내용은 CSS의 다양한 센터링 방법에 대한 전체 설명입니다.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Svelte Transition API는 맞춤형 전환을 포함하여 문서를 입력하거나 떠날 때 구성 요소를 애니메이션하는 방법을 제공합니다.

웹 사이트의 컨텐츠 프레젠테이션을 설계하는 데 얼마나 많은 시간을 소비합니까? 새 블로그 게시물을 작성하거나 새 페이지를 만들 때

최근 Bitcoin의 가격이 20k 달러가 넘는 USD가 최근에 등반되면서 최근 30k를 끊었으므로 Ethereum을 만드는 데 깊이 다이빙을 할 가치가 있다고 생각했습니다.

NPM 명령은 서버 시작 또는 컴파일 코드와 같은 것들에 대한 일회성 또는 지속적으로 실행되는 프로세스로 다양한 작업을 실행합니다.

이 기사에서는 그림자 및 그라디언트와 같은 텍스트 효과에 CSS를 사용하여 성능을 최적화하고 사용자 경험을 향상시킵니다. 초보자를위한 리소스도 나열됩니다. (159 자)

개발자로서 어느 단계에 있든, 우리가 완료 한 작업은 크든 작든, 개인적이고 전문적인 성장에 큰 영향을 미칩니다.

나는 다른 날에 Eric Meyer와 대화를 나누고 있었고 나는 내 형성 시절부터 Eric Meyer 이야기를 기억했습니다. CSS 특이성에 대한 블로그 게시물을 썼습니다
