CSS 압축
작은 예제가 주석과 공백만 지워 98바이트에서 66바이트로 32.7% 줄어듭니다: .card{display:flex;margin:0 auto}.card>.title:hover{color:#123456}
사용 방법
- 입력 칸에 CSS를 붙여 넣습니다.
- 남겨야 하는 라이선스 주석이 있다면 "/*! 주석 남기기"를 켜 둡니다. 끄면 모든 주석을 지웁니다.
- 압축 전후 크기를 확인하고 압축된 CSS를 복사합니다.
계산 방법
CSS 해석에 영향을 줄 수 없는 것만 지웁니다. 주석, 줄바꿈, 들여쓰기, { } ; , > 앞뒤 공백, 콜론 뒤 공백이 그 대상입니다. 닫는 중괄호 바로 앞의 마지막 세미콜론도 뺍니다.
색상·숫자·단위를 줄이거나, 규칙을 합치거나, 순서나 이름을 바꾸지 않습니다. 예를 들어 0px과 #ffffff는 그대로 남습니다. 결과를 예측 가능하고 안전하게 두려고 일부러 정한 한계이며, 그만큼 전문 최적화 도구보다 절감 폭은 조금 작습니다.
의미가 있는 공백은 남깁니다. 자손 선택자 앞의 공백, margin: 0 auto 같은 값 사이 공백, "and (min-width: 600px)" 안의 공백, calc() 안 + 와 - 양옆 공백이 그렇습니다. 따옴표 문자열, data URI 같은 따옴표 없는 url() 값, 이스케이프 문자는 그대로 복사합니다.
닫히지 않은 주석·문자열·url(), 짝이 맞지 않는 중괄호가 있으면 경고합니다. 결과는 그래도 만들어 주니, 경고가 보이면 원본을 확인하세요.
자주 묻는 질문
압축하면 페이지 모양이 달라지나요?
달라지지 않아야 정상입니다. 공백과 주석만 지우고 의미 있는 공백은 남기기 때문입니다. 혹시 차이가 보이면 원본을 쓰고, 경고로 표시되는 빠진 중괄호나 따옴표가 없는지 입력을 확인하세요.
다른 압축 도구보다 덜 줄어드는 이유는 뭔가요?
전문 최적화 도구는 규칙 병합, 값 축약, 쓰지 않는 코드 제거까지 합니다. 이런 단계는 드물게 결과를 바꿀 수 있어서 이 도구는 하지 않습니다. 직접 작성한 CSS는 대개 공백과 주석이 절감분의 대부분입니다.
/*! 주석은 어떻게 되나요?
기본값은 /*! 로 시작하는 주석을 남깁니다. 라이선스 고지를 표시하는 흔한 방식이기 때문입니다. 옵션을 끄면 이 주석도 지웁니다.
결과를 실서비스에 써도 되나요?
중첩 규칙과 사용자 정의 속성(CSS 변수)을 포함한 일반적인 CSS라면 쓸 수 있습니다. 어떤 도구든 그렇듯 배포 전에 실제 페이지에서 확인하고, 읽기 쉬운 원본 파일은 따로 보관하세요.
CSS가 업로드되나요?
아니요. 모든 처리는 브라우저 안에서 이뤄집니다.