CSS - Resize: 사용자가 요소 크기 조절 권한 부여
안녕하세요, 미래의 웹 개발자 여러분! 오늘 우리는 사용자가 웹사이트 방문자의 손에 요소 크기 조정의 힘을 부여하는 흥미로운 CSS 속성에 대해 알아보겠습니다. resize의 세계에 환영합니다!

CSS Resize 속성이란?
자, 구체적인 내용으로 들어가기 전에 간단한 질문을 드리겠습니다: 어떤 텍스트 영역의 오른쪽 아래 모서리에 있는 작은 핸들이 떠나셨나요? 그것은 resize 속성이 작동하는 것입니다!
CSS의 resize 속성은 사용자가 요소를 조정할 수 있게 만듭니다. 사용자에게 요소의 크기를 조정할 수 있는 작은 드래그 핸들이 주는 것입니다. 멋지지 않나요?
적용 대상
이제 "내 웹페이지의 모든 것을 조정할 수 있나요?" 고민할 수도 있습니다. 그러나 resize 속성은 주로 overflow가 visible이 아닌 것으로 설정된 요소에 적용됩니다. 이는 일반적으로 다음과 같습니다:
-
<textarea>요소 -
overflow: auto또는overflow: scroll을 가진 요소
하지만 걱정 마세요, 다른 요소를 조정할 수 있도록 하는 방법에 대해서도 탐구해보겠습니다!
문법
resize 속성을 사용하는 문법을 간단히 설명해보겠습니다:
element {
resize: value;
}
간단하죠? 이제 다양한 값을 사용해보겠습니다.
CSS Resize 값
다음 표는 resize 속성에 대해 가능한 모든 값을 요약합니다:
| 값 | 설명 |
|---|---|
| none | 요소는 조정할 수 없습니다 |
| vertical | 요소는 수직으로 조정할 수 있습니다 |
| horizontal | 요소는 수평으로 조정할 수 있습니다 |
| both | 요소는 수직과 수평으로 모두 조정할 수 있습니다 |
| inherit | 부모 요소에서 조정 값을 상속합니다 |
이제 이러한 값을 각각 예제와 함께 탐구해보겠습니다!
CSS resize - none 값
textarea {
resize: none;
}
이 코드는 브라우저에게 "이 텍스트 영역을 아무도 조정하지 못하게 하라!"라고 말합니다. 요소에 "손대지 마" 표지를 달는 것과 같습니다.
CSS resize - vertical 값
textarea {
resize: vertical;
height: 100px;
width: 200px;
}
이 코드로 텍스트 영역은 기본적으로 100px 높이와 200px 너비로 시작하지만, 사용자는 그것을 더 높이거나 낮춰할 수 있습니다. 텍스트에 대한 엘리베이터 같은 것입니다!
CSS resize - horizontal 값
div {
resize: horizontal;
overflow: auto;
width: 200px;
height: 100px;
border: 2px solid blue;
}
여기서 우리는 div에 resize: horizontal을 적용하고 있습니다. 비텍스트 영역 요소의 경우 overflow를 visible이 아닌 것으로 설정해야 합니다. 사용자는 이제 이 div의 너비를 조정할 수 있습니다. 고무줄을 당기는 것 같은 느낌입니다!
CSS resize - both 값
textarea {
resize: both;
min-height: 100px;
max-height: 300px;
min-width: 200px;
max-width: 400px;
}
이제는 최고의 유연성을 제공합니다! 사용자는 텍스트 영역을 어떤 방향으로나 조정할 수 있지만, 너무 작거나 너무 커지지 않도록 제한을 두었습니다. 사용자에게 모래pit을 제공하는 것과 같지만, 일정한 경계를 두어 통제하려고 합니다.
CSS resize - inherit 값
.parent {
resize: both;
overflow: auto;
}
.child {
resize: inherit;
}
여기서 자식 요소는 부모 요소로부터 조정 행동을 상속받습니다. 가족 상속을 물려주는 것과 같지만, 조정을 위한 것입니다!
CSS resize - 임의 요소
이제 조금 더 도전적인 부분으로 넘어가겠습니다. 일반적인 div를 조정할 수 있게 만들어보겠습니다.
.resizable-div {
width: 200px;
height: 100px;
padding: 10px;
border: 2px solid #00f;
overflow: auto;
resize: both;
}
<div class="resizable-div">
<p>저는 조정 가능한 div입니다! 저를 조정해보세요!</p>
</div>
overflow: auto와 resize: both를 설정함으로써 우리는 평범한 div를 조정 가능한 놀이터로 만들었습니다! HTML 요소에게 초능력을 주는 것과 같습니다.
결론
그렇습니다, 여러분! CSS의 resize 속성에 대해 탐구한 것을 마쳤습니다. resize: none으로 요소를 고정시키는 것에서 resize: both로 완전히 유연한 컴포넌트를 만드는 것까지, 이제 사용자가 웹페이지에서 요소 크기를 조정하는 방법을 제어할 수 있는 힘을 가지고 있습니다.
기억하세요, 큰 힘에는 큰 책임이 따릅니다. 사용자 경험을 향상시키기 위해 resize 속성을 지혜롭게 사용하세요. 방문자를 혼동시키거나 실망시키지 마세요.
웹 개발의 여정을 계속하면서 다양한 CSS 속성을 실험해보세요. 누가 알겠습니까? 당신의 코딩 도구에 새로운 트릭을 발견할 수도 있습니다!
기쁜 코딩을 하시고, 여러분의 요소가 항상 완벽한 크기를 유지하길 바랍니다!
Credits: Image by storyset
