1.3.3 clamp(), min(), max()
약 5분
읽기 설정
글자 크기
줄 간격
글꼴
1.3.3 clamp(), min(), max()
CSS에서 단위를 정할 때 상황에 따라 유동적인 크기를 지정할 수 있는 clamp(), min(), max() 함수는 매우 유용합니다. 이 함수들은 반응형 웹 디자인에서 다양한 화면 크기에 대응하기 위해 사용되며, 특히 fluid typography와 layout을 구현하는 데 강력한 도구입니다.
clamp()
clamp() 함수는 세 개의 인자를 받습니다: 최소값, 최대값, 그리고 원하는 값입니다. 이 함수를 사용하면 주어진 조건 내에서 값이 자동으로 조정됩니다.
예를 들어, 다음과 같은 CSS 코드에서는 텍스트의 크기가 화면의 크기에 따라 유동적으로 변화하도록 설정할 수 있습니다:
h1 {
font-size: clamp(1.5rem, 5vw + 1rem, 3rem);
}
이 코드는 최소 1.5rem, 최대 3rem의 폰트 크기를 갖습니다. 그리고 뷰포트의 폭에 따라 5vw + 1rem에서의 동적으로 결정된 값을 사용합니다.
min() 및 max()
min()과 max() 함수는 각각 지정된 값 중 최소값과 최대값을 반환합니다. 이 두 함수를 사용하여 더 복잡한 레이아웃 조정이 가능합니다.
예를 들어:
.container {
width: min(100%, 1200px);
}
위의 CSS 코드에서 컨테이너의 너비는 100%이거나 1200px 중 더 작은 값을 반환합니다. 이렇게 하면 뷰포트의 크기가 1200px을 초과해도 컨테이너의 너비가 제한됩니다.
반대로, max() 함수를 사용하면 다음과 같이 설정할 수 있습니다:
.box {
height: max(200px, 50vh);
}
이 경우 박스의 높이는 200px 또는 50vh 중 더 큰 값이 됩니다.
실습
이제 여러분의 웹 프로젝트에 clamp(), min(), max()를 적용해 보십시오. 아래의 실습 과제를 따라 해보세요.
- 다음 HTML 구조를 사용하여 웹 페이지를 만드세요:
<div class="responsive-text"> 반응형 텍스트 </div> - CSS 파일에서
clamp(),min(),max()를 사용하여 텍스트의 크기를 설정하세요. 최소값과 최대값을 적절히 설정하여 다양한 뷰포트에서 테스트해 보세요. - Chrome DevTools의 Device Toolbar를 사용하여 다양한 화면 크기에서 잘 작동하는지 확인하세요.
이 실습을 통해 반응형 웹 디자인에 있어 유동적인 단위 사용의 중요성을 경험할 수 있습니다. 끝나면 꼭 결과를 검토하고, 학습한 내용을 되새기세요!
프로젝트 연계
이제 번거롭게 보였던 고정된 단위를 사용한 디자인에서 벗어나, 여러분이 만든 웹 프로젝트에 clamp(), min(), max()를 활용하여 더욱 반응형인 디자인을 구현해보세요. 이를 통해 다양한 디바이스에서 통일감 있는 사용자 경험을 제공할 수 있습니다.
멋진 포트폴리오 사이트나 기업형 홈페이지를 제작하는 과정에서도 이러한 반응형 유닛을 적절히 활용하여 세련된 UI/UX를 만들어 보시기 바랍니다.
댓글 0
아직 댓글이 없습니다. 첫 댓글을 남겨보세요.