728x90
CSS에서 텍스트 말줄임 처리하는 방법
웹사이트를 만들다 보면 긴 텍스트를 일정한 너비 안에 표시해야 하는 경우가 많습니다. 이때 텍스트가 넘칠 경우 말줄임(...)을 적용하는 방법을 알아보겠습니다.
1. 한 줄 말줄임 (text-overflow: ellipsis)
✅ 기본 코드
.text-ellipsis {
display: block; /* 또는 inline-block */
width: 150px; /* 원하는 너비 지정 */
white-space: nowrap; /* 줄 바꿈 방지 */
overflow: hidden; /* 넘치는 텍스트 숨김 */
text-overflow: ellipsis; /* 말줄임(...) 적용 */
}
📌 핵심 포인트
- display: block; 또는 display: inline-block;을 설정해야 합니다. (inline 요소는 width 적용이 안 됨)
- white-space: nowrap;을 사용하여 텍스트가 줄 바꿈되지 않도록 합니다.
- overflow: hidden;을 설정하여 넘치는 부분을 숨깁니다.
- text-overflow: ellipsis;을 추가하면 말줄임이 적용됩니다.
2. 여러 줄 말줄임 (-webkit-line-clamp)
한 줄이 아니라 여러 줄에서도 말줄임을 하고 싶다면 -webkit-line-clamp를 사용하면 됩니다.
✅ 여러 줄 말줄임 코드
.multi-line-ellipsis {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2; /* 최대 2줄까지 표시 */
overflow: hidden;
width: 200px; /* 원하는 너비 지정 */
}
📌 주의할 점
- -webkit-line-clamp은 Chrome, Edge, Safari 등 웹킷(WebKit) 기반 브라우저에서만 작동합니다.
- display: -webkit-box;와 -webkit-box-orient: vertical;을 함께 설정해야 합니다.
- 정확한 줄 개수를 지정하려면 height와 line-height 값을 조정하는 방법도 고려해야 합니다.
3. 여러 줄 말줄임 (대체 방법: JavaScript 활용)
모든 브라우저에서 동작하게 하려면 JavaScript를 활용하는 방법도 있습니다.
function truncateText(selector, maxLines) {
const elements = document.querySelectorAll(selector);
elements.forEach(el => {
let lineHeight = parseInt(window.getComputedStyle(el).lineHeight);
let maxHeight = lineHeight * maxLines;
if (el.scrollHeight > maxHeight) {
el.style.height = maxHeight + 'px';
el.style.overflow = 'hidden';
el.style.textOverflow = 'ellipsis';
}
});
}
truncateText('.multi-line-js', 2); /* 2줄까지 표시 */
✨ 마무리
- 한 줄 말줄임은 text-overflow: ellipsis;을 활용하면 간단하게 해결됩니다.
- 여러 줄 말줄임은 -webkit-line-clamp을 사용하거나 JavaScript로 조정할 수 있습니다.
- 프로젝트의 요구 사항과 브라우저 지원을 고려하여 적절한 방법을 선택하세요!
이제 CSS를 활용해 텍스트 길이를 깔끔하게 정리해 보세요! 😃
https://link.coupang.com/a/clAtfa
생활코딩! HTML+CSS+자바스크립트 - HTML/CSS | 쿠팡
쿠팡에서 생활코딩! HTML+CSS+자바스크립트 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 HTML/CSS 제품도 바로 쿠팡에서 확인할 수 있습니다.
www.coupang.com
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
'홈페이지' 카테고리의 다른 글
html에서 이미지맵 위치를 비율에 맞춰 변경하기-image-map-resizer 스크립트 (1) | 2025.04.18 |
---|---|
포토샵 WebP 플러그인 사용 방법 - .webp 확장자 (0) | 2025.04.18 |
PHP 파일을 include 또는 require 할 때  (BOM, Byte Order Mark) 문제가 발생하는 경우 - 공백 줄바뀜 (0) | 2025.03.26 |
html 강제로 링크 및 css 수정하기 (0) | 2025.03.19 |
제이쿼리 다중팝업 변수처리 (1) | 2025.03.19 |
댓글