CSS로 Div 정렬 마스터하기
CSS에서 요소를 수평으로 중앙에 배치하는 것은 웹 개발자가 겪는 일반적인 작업입니다. 버튼, 이미지, div 정렬 등 완벽한 정렬을 달성하는 것이 때로는 까다로울 수 있습니다. 이 가이드에서는 가로로 중앙에 배치하는 다양한 방법을 살펴보겠습니다.
이러한 기술을 이해하고 적용하면 웹 요소가 원하는 위치에 정확하게 배치되도록 할 수 있습니다. 이 필수 CSS 기술에 대한 포괄적인 이해를 돕기 위해 가변상자, 그리드 및 기존 방법을 포함한 다양한 접근 방식을 다룰 것입니다.
명령 | 설명 |
---|---|
display: flex; | Flex 컨테이너를 정의하고 Flexbox 레이아웃을 활성화합니다. |
justify-content: center; | Flex 컨테이너 내에서 항목을 가로 중앙에 배치합니다. |
align-items: center; | Flex 컨테이너 내에서 항목을 수직으로 중앙에 배치합니다. |
place-items: center; | 그리드 컨테이너에서 항목을 가로 및 세로 중앙에 배치합니다. |
transform: translate(-50%, -50%); | 요소를 자체 너비와 높이의 50%만큼 이동하여 중앙에 배치합니다. |
position: absolute; | 가장 가까운 위치의 조상을 기준으로 요소를 배치합니다. |
top: 50%; | 포함된 요소의 상단에서 50% 떨어진 곳에 요소를 배치합니다. |
left: 50%; | 요소를 포함하는 요소의 왼쪽에서 50% 위치에 배치합니다. |
Flexbox, Grid 및 Traditional CSS를 사용하여 요소 중심 맞추기
첫 번째 스크립트는 중앙에 배치하는 방법을 보여줍니다.
두 번째 스크립트에서는 다음을 활용합니다. 비슷한 결과를 얻으려면. 신청함으로써 상위 컨테이너에 , 하위 요소는 가로 및 세로 모두 중앙에 배치됩니다. 이 방법은 그리드 기반 레이아웃에 특히 유용합니다. 마지막으로 전통적인 방법에는 설정이 포함됩니다. position: absolute; 하위 요소에 대해 사용하고 그리고 ~와 함께 부모 내에서 중앙에 배치합니다. 이 접근 방식은 고정 크기 요소에 효과적입니다.
Flexbox를 사용하여 Div를 수평 중앙에 배치
Flexbox를 사용한 HTML 및 CSS
<!DOCTYPE html>
<html>
<head>
<title>Flexbox Centering</title>
<style>
#outer {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
border: 1px solid black;
}
#inner {
padding: 20px;
background-color: lightblue;
border: 1px solid blue;
}</style>
</head>
<body>
<div id="outer">
<div id="inner">Foo foo</div>
</div>
</body>
</html>
CSS 그리드를 사용하여 Div 중심 맞추기
그리드 레이아웃이 포함된 HTML 및 CSS
<!DOCTYPE html>
<html>
<head>
<title>Grid Centering</title>
<style>
#outer {
display: grid;
place-items: center;
height: 100vh;
border: 1px solid black;
}
#inner {
padding: 20px;
background-color: lightgreen;
border: 1px solid green;
}</style>
</head>
<body>
<div id="outer">
<div id="inner">Foo foo</div>
</div>
</body>
</html>
CSS를 이용한 전통적인 센터링 방법
여백 자동이 포함된 HTML 및 CSS
<!DOCTYPE html>
<html>
<head>
<title>Traditional Centering</title>
<style>
#outer {
width: 100%;
height: 100vh;
border: 1px solid black;
position: relative;
}
#inner {
width: 50px;
padding: 20px;
background-color: lightcoral;
border: 1px solid red;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}</style>
</head>
<body>
<div id="outer">
<div id="inner">Foo foo</div>
</div>
</body>
</html>
센터링 요소를 위한 고급 기술
컨테이너 내에서 요소를 수평으로 중앙에 배치하는 또 다른 방법은 다음을 사용하는 것입니다. 재산. 이 접근 방식은 인라인 블록 또는 인라인 요소에 특히 효과적입니다. 신청함으로써 상위 컨테이너에 대한 모든 하위 요소는 가로 중앙에 배치됩니다. 그러나 이 방법은 인라인 블록으로 변환되지 않는 한 블록 수준 요소에 대해 작동하지 않습니다.
또한 다음을 사용할 수 있습니다. 블록 수준 요소를 중앙에 배치하는 속성입니다. 요소의 왼쪽 및 오른쪽 여백을 자동으로 설정하면 해당 요소를 상위 컨테이너 내에서 수평 중앙에 배치할 수 있습니다. 이 기술은 간단하며 고정 너비 요소에 적합합니다. 이러한 방법을 Flexbox 및 Grid와 같은 최신 CSS 레이아웃 기술과 결합하면 필요에 따라 요소를 정확하게 정렬하기 위한 포괄적인 도구 키트가 제공됩니다.
- 인라인 요소를 중앙에 어떻게 배치하나요?
- 사용 인라인 요소를 중앙에 배치하려면 상위 컨테이너에 있어야 합니다.
- margin: auto;를 사용할 수 있나요? 블록 요소를 중앙에 배치하려면?
- 예, 설정 중입니다. 왼쪽과 오른쪽에는 블록 요소가 중앙에 배치됩니다.
- 센터링을 위한 Flexbox와 Grid의 차이점은 무엇입니까?
- 1차원 레이아웃에 사용되는 반면 2차원 레이아웃용입니다.
- CSS에서 고정 너비 요소를 중앙에 어떻게 배치하나요?
- 사용 또는 ~와 함께
- Flexbox를 사용하여 요소를 수직으로 중앙에 배치할 수 있나요?
- 네, 사용하세요 플렉스 컨테이너에서 요소를 수직으로 중앙에 배치합니다.
- text-align: center; 블록 요소에 대해 작업합니까?
- 아니요, 인라인 또는 인라인 블록 요소에만 작동합니다.
- 컨테이너에서 여러 요소를 중앙에 어떻게 배치하나요?
- 사용 ~와 함께 그리고
- 장소 항목이란 무엇입니까: 센터; 그리드에서?
- 그리드 컨테이너에서 항목을 가로 및 세로로 가운데에 배치합니다.
- Flexbox나 Grid 없이 요소를 중앙에 배치할 수 있나요?
- 예, 다음과 같은 방법을 사용합니다. , , 또는 요소를 중앙에 배치할 수도 있습니다.
CSS 센터링 기술 마무리
시각적으로 매력적인 웹 레이아웃을 만들기 위해서는 다양한 CSS 방법을 사용하여 요소를 수평으로 중앙에 배치하는 방법을 이해하는 것이 필수적입니다. 같은 기술을 마스터함으로써 , , 그리고 속성을 통해 개발자는 자신의 디자인이 기능적이고 미적으로 만족스러운지 확인할 수 있습니다. 이러한 방법을 실험해 보면 CSS 기능을 더 깊이 이해할 수 있습니다.