CSS 로더 생성기(스피너)
순수 CSS 로딩 스피너를 만듭니다. 링, 이중 링, 튀는 점, 막대, 펄스, 리플, 분할형 중에서 색, 크기, 두께, 속도를 정하고 접근성 HTML과 CSS를 복사하세요.
CSS 로더는 GIF나 자바스크립트 라이브러리 없이 무언가 진행 중임을 보여 줍니다. 몇 줄의 HTML과 키프레임 애니메이션이면 브라우저가 컴포지터에서 부드럽게 실행합니다. 이 생성기는 링, 이중 링, 튀는 점, 막대, 펄스, 리플, 선 12개짜리 분할형 스피너까지 일곱 가지 대표 디자인을 원하는 색, 크기, 두께, 속도로 만들고, 접근성 상태 라벨과 동작 줄이기 규칙을 함께 넣습니다. 미리보기는 같은 CSS로 그린 움직이는 SVG입니다.
사용 방법
- 로더 종류를 고릅니다.
- 색(링은 트랙 색도), 크기, 두께, 한 주기의 길이를 정합니다.
- "loader"가 기존 CSS와 겹치면 클래스 이름을 바꿉니다.
- 로더가 나타날 자리에 HTML을, 스타일시트에 CSS를 복사합니다.
계산식
ring: border-top in the color, other borders in the track color, rotate(360deg) every cycle · dots: size ÷ 4 per dot, gap = size ÷ 8, delays −0.32 and −0.16 of a cycle · segments: 12 lines rotated 30° apart, each fading one twelfth of a cycle after the last
transform과 opacity만 애니메이션하므로 브라우저가 페이지 레이아웃을 다시 계산하지 않고 실행할 수 있습니다. 음수 지연은 각 부분을 주기 중간에서 시작시켜 첫 프레임부터 움직이는 것처럼 보이게 합니다.
예시
기본값은 48 px 링에 6 px #e5e7eb 트랙과 #2563eb 호를 두고 초당 한 바퀴 돌립니다. border: 6px solid #e5e7eb; border-top-color: #2563eb; animation: loader-ring 1s linear infinite;입니다. 48 px 튀는 점은 12 px 점 세 개를 6 px 간격으로 놓으며, 주기가 1.5초이면 지연은 −0.48초와 −0.24초입니다.
자주 묻는 질문
CSS 로더는 접근성이 있나요?
애니메이션만으로는 스크린 리더에 아무 정보도 전달되지 않으므로, HTML에 role="status"와 시각적으로 숨긴 "Loading…" 텍스트를 넣었습니다. 콘텐츠가 도착하면 로더를 제거하거나 텍스트를 갱신하세요.
동작 줄이기에서 애니메이션을 멈추지 않고 느리게 하는 이유는 무엇인가요?
멈춘 로더는 페이지가 멈춘 것처럼 보입니다. 느린 회전은 움직임을 크게 줄이면서도 "아직 작업 중"이라는 메시지를 유지하므로, 진행 표시기에 흔히 쓰는 절충안입니다.
CSS 로더가 페이지를 느리게 만드나요?
아니요. transform과 opacity 애니메이션은 부담이 적습니다. 다만 로더가 숨겨졌을 때는 제거하세요. 끝없이 도는 애니메이션도 전력을 조금 쓰기 때문입니다.
출처
최종 업데이트:
이 입력값이 담긴 페이지 주소: https://kakao.mobile/ko/tools/css-loader-generator/
인용·퍼가기
kakaoCalc. (2026, November 8). CSS 로더 생성기(스피너). https://kakao.mobile/ko/tools/css-loader-generator/
“CSS 로더 생성기(스피너).” kakaoCalc, 8 Nov. 2026, kakao.mobile/ko/tools/css-loader-generator/.