display: flex;
justify-content: center;
align-items: center;
1. display: flex;
2. justify-content: center;
3. align-items: center;
결과적으로: 이 세 가지 속성을 함께 사용하면, Flex 컨테이너 내의 모든 자식 요소들이 컨테이너의 가운데에 위치하게 됩니다.
예시:
.container {
display: flex;
justify-content: center;
align-items: center;
height: 200px;
width: 300px;
border: 1px solid black;
}
.item {
background-color: lightblue;
padding: 20px;
}
이 예시에서는 .container 클래스를 가진 div 요소가 Flex 컨테이너로 설정되어 있고, 그 안의 .item 클래스를 가진 div 요소가 가운데 정렬됩니다.
line-height: 100vh; 속성은 CSS에서 한 줄의 높이를 설정하는 데 사용됩니다.
주의사항:
.full-height-text {
line-height: 100vh;
font-size: 5rem; /* 글자 크기 조절 */
text-align: center; /* 가운데 정렬 */
}
위 코드는 .full-height-text 클래스를 가진 요소의 한 줄 높이를 브라우저 창의 높이만큼 설정하고, 글자 크기를 5rem으로, 그리고 텍스트를 가운데 정렬하는 예시입니다.
line-height: 100vh; 속성은 매우 강력한 기능이지만, 잘못 사용하면 예상치 못한 결과를 초래할 수 있습니다. 특정한 디자인 목표를 달성하기 위해 신중하게 사용해야 합니다.
문제의 원인과 해결 방안
display: flex; justify-content: center; align-items: center;는 일반적으로 요소를 가운데 정렬하는 데 효과적인 방법입니다. 하지만 이 방법만으로는 세로 정렬이 되지 않는 경우가 있습니다. 이는 다음과 같은 이유 때문일 수 있습니다.
line-height: 100vh;를 사용하는 이유
line-height: 100vh;는 요소의 한 줄 높이를 브라우저 창의 높이와 동일하게 만듭니다. 이를 통해 다음과 같은 효과를 얻을 수 있습니다.
왜 line-height: 100vh;를 사용하면 세로 정렬이 되는 걸까요?
주의사항
결론
line-height: 100vh;는 display: flex;와 함께 사용하여 요소를 세로 가운데 정렬하는 간단하고 효과적인 방법입니다. 하지만 모든 상황에 적용할 수 있는 만능 해결책은 아니므로, 상황에 맞게 적절한 방법을 선택해야 합니다.
더 자세한 설명이 필요하시면 언제든지 질문해주세요.
예시 코드:
.container {
display: flex;
justify-content: center;
align-items: center;
height: 100vh; /* 부모 요소의 높이를 100vh로 설정 */
}
.item {
line-height: 100vh; /* 자식 요소의 line-height를 100vh로 설정 */
text-align: center;
}
위 코드는 .container 클래스를 가진 요소와 .item 클래스를 가진 요소를 브라우저 창의 중앙에 배치하는 예시입니다.
팝업창과 모달창 (0) | 2024.12.02 |
---|---|
노트 추가 기능 (0) | 2024.11.28 |
자바스크립트 함수 표현식 (2) | 2024.11.22 |
자바스크립트 함수 (1) | 2024.11.22 |
자바스크립트 for 문 (0) | 2024.11.22 |