오늘 저는 순수 HTML5로 구현된 매우 아름다운 시계를 여러분과 공유하고 싶습니다. 전체 인터페이스는 html5로 그려졌습니다. 렌더링을 살펴보겠습니다. 구현 코드. htm 코드: XML/HTML 코드클립보드에 콘텐츠 복사 <div class="컨테이너" > <svg 너비="600" 높이="600" 클래스='svg-element'> <필터 id="f4" x="-50%" y ="-20%" 너비="200%" 높이="140%"> <feOffset 결과="offOut" in="SourceAlpha" dx="0" dy="25" / > <feGaussianBlur 결과="blurOut" in="offOut" 표준편차="10" /> <feBlend in="SourceGraphic" in2="blurOut" 모드="정상" /> 필터> <필터 id="blurred- 출처" x="-50%" y="-20%" 너비="200%" 높이="140%"> <feGaussianBlur in="color" 표준편차="5" 결과="blurOut"/> 필터> <필터 id="inset- 그림자"> <feOffset dx="0" 디="10"/> <feGaussianBlur 표준편차="15" 결과="오프셋-흐림"/> <feComposite 연산자="아웃" in="SourceGraphic" in2="오프셋-블러" 결과="역"/> <feFlood flood-color=" 검정색" 홍수 불투명도="1" 결과="색상"/> <feComposite 연산자="in" in="color" in2="역" 결과="그림자"/> <feComponentTransfer in="shadow" 결과="그림자"> < ;!-- 그림자 불투명도 --> <feFuncA type="선형" 경사="1"/> feComponentTransfer> <feComposite 연산자="이상" in="그림자" in2="SourceGraphic"/> 필터> <필터 id="inset- 섀도우-빅"> <feOffset dx="0" 디="4"/> <feGaussianBlur 표준편차="2" 결과="오프셋-흐림"/> <feComposite 연산자="아웃" in="SourceGraphic" in2="오프셋-블러" 결과="역"/> <feFlood flood-color=" 흰색" 홍수 불투명도="1" 결과="색상"/> <feComposite 연산자="in" in="color" in2="역" 결과="그림자"/> <feComponentTransfer in="shadow" 결과="그림자"> < ;!-- 그림자 불투명도 --> <feFuncA type="선형" 경사="0.5"/> feComponentTransfer> <feComposite 연산자="이상" in="그림자" in2="SourceGraphic"/> 필터> <필터 id="inset- 그림자 큰 바닥"> <feOffset dx="0" 디="10"/> <feGaussianBlur 표준편차="2" 결과="오프셋-흐림"/> <feComposite 연산자="아웃" in="SourceGraphic" in2="오프셋-블러" 결과="역"/> <feFlood flood-color=" #FFF" 홍수 불투명도="1" 결과 ="색상"/> <feComposite 연산자="in" in="color" in2="역" 결과="그림자"/> <feComponentTransfer in="shadow" 결과="그림자"> < ;!-- 그림자 불투명도 --> <feFuncA type="선형" 경사="0.5"/> feComponentTransfer> <feComposite 연산자="이상" in="그림자" in2="SourceGraphic" 결과='final-shadow-1'/> <feOffset dx="0" dy="-12"/> <feGaussianBlur 표준편차="2" 결과="오프셋-흐림"/> <feComposite 연산자="아웃" in="final-shadow-1" in2="오프셋-흐림" 결과="역"/ > <feFlood flood-color=" #69c39b" 홍수 불투명도="1" 결과 ="색상"/> <feComposite 연산자="in" in="color" in2="역" 결과="그림자"/> <feComponentTransfer in="shadow" 결과="그림자"> < ;!-- 그림자 불투명도 --> <feFuncA type="선형" 경사="0.5"/> feComponentTransfer> <feComposite 연산자="이상" in="그림자" in2="final-shadow-1" 결과='final-shadow-2'/> 필터> <linearGradient id="LG" gradientTransform="회전(90 .5 .5)"> <중지 id="s0" 오프셋="0" 스톱 컬러 ="#d6f8e9"/> <중지 id="s2" 오프셋="1" 스톱 컬러 ="#9ee1c4"/> linearGradient> <linearGradient id="LG2" gradientTransform="회전(-90 .5 .5)"> <중지 id="s0" 오프셋="0.07" 스톱 컬러 ="#fdfefe"/> <중지 id="s1" 오프셋="0.5" 스톱 컬러 ="#98e2c2"/> <중지 id="s2" 오프셋="0.8" 스톱 컬러 ="#79c9a7"/> <중지 id="s3" 오프셋="1" 스톱 컬러 ="#5fbc95"/> linearGradient> <linearGradient id="arrow1" gradientTransform="회전(-90 .5 .5)"> <중지 id="s0" 오프셋="0" 스톱 컬러 ="#07594f"/> <중지 id="s2" 오프셋="1" 스톱 컬러 ="#01443c"/> linearGradient> <linearGradient id="arrowRed" gradientTransform="회전(-90 .5 .5)"> <중지 id="s0" 오프셋="0" 스톱 컬러 ="#fd5959"/> <중지 id="s2" 오프셋="1" 스톱 컬러 ="#fe7c7c"/> linearGradient> <linearGradient id="center- 손잡이 바깥쪽" gradientTransform="회전(90 .5 .5)"> <중지 id="s0" 오프셋="0" 스톱 컬러 ="#fffefe"/> <중지 id="s2" 오프셋="1" 스톱 컬러 ="#86ecdb"/> linearGradient> <linearGradient id="center- 손잡이 내부" gradientTransform="회전(90 .5 .5)"> <중지 id="s0" 오프셋="0" 스톱 컬러 ="#a0dcd2"/> <중지 id="s2" 오프셋="1" 스톱 컬러 ="#dff9ef"/> linearGradient> <g 변형="번역( 50, 20)"> <직선 x="0" y="0" 너비="382" 높이="382" 채우기="url(#LG)" 필터="url(#inset-shadow-big-bottom)" rx="75" ry="105" /> <원 cx="191" cy="191" r="155" 채우기="url(#LG2)"/> <원 cx="191" cy="191" r="130" 채우기="#53d2c5"/> <원 cx="191" cy="191" r="130" 채우기="#53d2c5" 필터="url(#inset-shadow)" /> <g 너비="200" 높이="200" 변형="번역(100, 100)"> <animateTransform attributeName="변형" 유형="번역" 기간="4s" 값="191,191;191,191" 반복 횟수 ="무기한"/> <animateTransform attributeName="변형" 가산="합계" 유형="회전" 기간="86400s" 값="200, 0 0;550 0 0" 반복 횟수="무한" /> <직선 x="0" y="0" 너비="22" 높이="70" 채우기="url(#arrow1)" 채우기 불투명도="0.5" 필터="url(#blurred-source)" rx="10" ry="10" 변환="번역(-11, -15)" /> ; g> <g 너비="200" 높이="200" 변형="번역(100, 100)"> <animateTransform attributeName="변형" 유형="번역" 기간="4s" 값="191,191;191,191" 반복 횟수 ="무기한"/> <animateTransform attributeName="변형" 가산="합계" 유형="회전" 기간="86400s" 값="200, 0 0;550 0 0" 반복 횟수="무한" /> <직선 x="0" y="0" 너비="20" 높이="70" 채우기="url(#arrow1)" rx="10" ry="10" 변형="번역(-10, -10)" /> ; g> <g 너비="200" 높이="200" 변형="번역(100, 100)"> <animateTransform attributeName="변형" 유형="번역" 기간="4s" 값="191,191;191,191" 반복 횟수 ="무기한"/> <animateTransform attributeName="변형" 가산="합계" 유형="회전" 기간="3600s" 값="90,0 0;450 0 0" 반복 횟수="무한" /> <직선 x="0" y="0" 너비="18" 높이="104" 채우기="url(#arrow1)" 채우기 불투명도="0.8" 필터="url(#blurred-source)"