>  기사  >  웹 프론트엔드  >  CSS를 완전히 활용하여 요소를 중앙에 배치

CSS를 완전히 활용하여 요소를 중앙에 배치

php中世界最好的语言
php中世界最好的语言원래의
2018-03-21 10:52:522034검색

이번에는 CSS를 최대한 활용하여 요소 센터링을 구현하기 위한 주의사항과 CSS를 사용하여 요소 센터링을 구현하기 위한

주의사항

에 대해 알려드리겠습니다. 다음은 실제 사례입니다. 살펴보겠습니다. 머리말

한 번은 취업 면접 중에 면접관이 CSS 질문인 것을 기억합니다. 브라우저 창에서 요소를 위, 아래, 왼쪽, 오른쪽에 가운데 배치하는 방법. 당시 제가 했던 대답은 먼저 JS를 사용하여 브라우저 창 높이를 가져온 다음 본문에 line-height를 창 높이로 설정하고 text-align:center를 설정한 다음 요소를 설정하는 것이었습니다. 디스플레이:인라인 블록 및

세로 정렬

:가운데. 하아, 지금 생각만 해도 피곤해요.

JS여야 하나요? CSS만 사용하여 요소를 중앙에 배치하는 방법이 없나요? 대답은 그렇습니다! 그리고 한 가지 이상의 방법이 있습니다! 1. 줄 높이 중심 정렬 방법

text-align: center; line-height:600px; <a href="http://www.php.cn/wiki/807.html" target="_blank">font-size</a>: 0;

子元素:display: inline-block; vertical-align: middle;
 

注:600px必须为父元素的高度,这里还需注意的一点是font-size需设为零,若未写该属性将导致元素并不能精确垂直居中。该方法即为我面试时所答的方法,缺点很明显,父元素高度须确定。(兼容IE8+)

二、table-cell居中法

父元素:display: table-cell; text-align: center; vertical-align: middle;

子元素:display: inline-block;
 

注:兼容IE8+

三、上下左右定位+margin居中法

父元素:<a href="http://www.php.cn/wiki/902.html" target="_blank">position</a>: relative;

子元素:position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto;
 

注:兼容IE8+

四、50%定位+margin居中法

父元素:position: relative;

子元素:position: absolute; left: 50%; top: 50%; margin: -200px 0 0 -200px;
 

注:200px须为该子元素的宽高的一半。例如该子元素宽为100px,高为50px,那么margin取值为-25px 0 0 -50px。该方法缺点是须确定子元素宽高。(兼容IE8+)

五、50%定位+translate居中法

父元素:position: relative;

子元素:position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
 

注:该方法使用了CSS3 transform属性,适合用于移动端。(兼容IE9+)

六、Flexbox居中法

父元素:display: flex; justify-content: center; align-items: center;
 

注:该方法使用了Flexbox弹性布局,移动端兼容性也存在很大问题。(兼容IE10+)

七、Flexbox+margin居中法

父元素:display: flex;

子元素:margin: auto;
상위 요소: text-align: center; <a href="http://www.php.cn/wiki/%20807.html" target="_blank">font-size<br>: 0;</a>

하위 요소: display: inline-block; Vertical-align: middle;

참고:

600px은 상위 요소의 높이여야 합니다. 여기서 주목해야 할 또 다른 사항은 글꼴 크기를 0으로 설정해야 한다는 것입니다. 이 속성을 작성하지 않으면 요소가 정확하게 수직 중앙에 배치되지 않습니다. 이 방법은 제가 인터뷰 때 답변한 방법인데, 단점이 명확하게 보이는 부분은 부모 요소의 높이를 결정해야 합니다. (IE8 이상과 호환) 🎜🎜🎜🎜2. 테이블 셀 센터링 방법🎜🎜🎜🎜상위 요소: display: table-cell; text-align: center;🎜🎜 하위 요소: display: inline-block;🎜 🎜🎜🎜🎜참고: 🎜🎜IE8+🎜🎜🎜🎜3과 호환됨 위, 아래, 왼쪽 및 오른쪽 위치 지정 + 여백 중심 지정 방법🎜🎜🎜 🎜상위 요소: position🎜: 상대;🎜🎜하위 요소: 위치: 절대; 왼쪽: 0; 위쪽: 0; 여백: 자동; 요소: <code>위치: 절대; 왼쪽: 50%; 위쪽: 50%; 여백: -200px 0 0 -200px;🎜 🎜 🎜🎜🎜참고: 🎜🎜200px은 하위 요소의 너비와 높이의 절반이어야 합니다. 예를 들어 하위 요소의 너비가 100px이고 높이가 50px인 경우 여백 값은 -25px 0 0 -50px입니다. 이 방법의 단점은 하위 요소의 너비와 높이를 결정해야 한다는 것입니다. (IE8 이상과 호환) 🎜🎜🎜🎜 5. 50% 위치 지정 + 중심 이동 방식🎜🎜🎜🎜상위 요소: 위치: 상대;🎜🎜하위 요소: 위치: 절대 왼쪽: 50%; 상위: 50%; 변환: 변환(-50%,-50%);🎜 🎜🎜🎜🎜참고: 🎜🎜이 방법은 CSS3 변환 속성을 사용하며 모바일 단말기에 적합합니다. (IE9 이상과 호환) 🎜🎜🎜🎜 6. Flexbox 센터링 방법 🎜🎜🎜🎜부모 요소: display: justify-content: align-items: center;🎜 🎜🎜🎜🎜참고 : 🎜🎜이 방법은 Flexbox 탄력적 레이아웃을 사용하며, 모바일 호환성에도 큰 문제가 있습니다. (IE10 이상과 호환) 🎜🎜🎜🎜7. Flexbox+여백 센터링 방식🎜🎜🎜🎜상위 요소: display: flex;🎜🎜하위 요소: margin: auto; 🎜 🎜🎜🎜🎜🎜🎜🎜이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 믿습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요! 🎜🎜추천 도서: 🎜

자세한 설명 내 초점

의사 요소::before 및 ::after 자세한 설명

font-size-adjust 속성이 웹 페이지 레이아웃을 최적화하는 방법

위 내용은 CSS를 완전히 활용하여 요소를 중앙에 배치의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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