웹 프론트엔드 HTML 튜토리얼 CSS3에서 로딩 애니메이션 효과를 구현하는 방법

CSS3에서 로딩 애니메이션 효과를 구현하는 방법

Nov 25, 2017 pm 02:15 PM
css3 loading

오늘은 CSS3를 사용하여 로딩 애니메이션 효과를 만드는 방법을 가르쳐 드리겠습니다. 애니메이션 효과를 만들기 위해 Loadning을 사용해야 하는 이유는 무엇입니까? 이 내용을 읽고 나면 모든 혼란이 사라질 것이라고 믿습니다.

첫 번째 단계는 정적 작은 국화를 그리는 것입니다.

sk-fading-circle {
  width: 40px;
  height: 40px;
  position: relative;
}
.sk-fading-circle .sk-circle {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.sk-fading-circle .sk-circle:before {
  content: '';
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #333;
  border-radius: 100%;
}
 
<div class="sk-fading-circle">
  <div class="sk-circle"></div>
  … //为缩减篇幅省略中间10个div
  <div class="sk-circle"></div>
</div>
로그인 후 복사

코드는 위와 같습니다. 정적 국화는 실제로 외부 div에 중첩된 12개의 작은 div입니다. 작은 div는 border-radius를 사용하여 원으로 그려지고 margin: 0 auto;를 사용하여 상단 그리드의 중앙에 배치됩니다. 12개의 작은 div는 절대 위치에 있으므로 모두 겹칩니다.

두 번째 단계는 12개의 겹쳐진 원을 펼치는 것입니다.

.sk-fading-circle .sk-circle2 { transform: rotate(30deg);}
.sk-fading-circle .sk-circle3 { transform: rotate(60deg);}
… //节省篇幅,每个圆每隔30度递增旋转
.sk-fading-circle .sk-circle12 { transform: rotate(330deg);}
 
<div class="sk-fading-circle">
  <div class="sk-circle1 sk-circle"></div>
  … //为缩减篇幅省略中间10个div
  <div class="sk-circle12sk-circle"></div>
</div>
로그인 후 복사

코드는 위와 같습니다. 변환의 회전을 사용하여 각 점을 회전시켜 완전한 국화 모양을 만듭니다. 변형에 익숙하지 않은 경우 아래 그림을 보시면 두 번째 점이 30도 회전되어 있음을 알 수 있습니다.

세 번째 단계는 애니메이션을 통해 불투명도 속성을 제어하는 ​​것입니다. 각 점이 페이드 인 및 아웃되도록

@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; }
}
@keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; }
}
.sk-fading-circle .sk-circle:before {
  ……
  animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
로그인 후 복사

각 점이 신호등처럼 동시에 깜박이도록 합니다.

마지막 단계는 각 점의 애니메이션 지연을 설정하여 깜박이는 시간에 시차를 두고 일반적인 국화 회전 효과를 형성하는 것입니다

.sk-fading-circle .sk-circle2:before {animation-delay: -1.1s; }
.sk-fading-circle .sk-circle3:before { animation-delay: -1s; }
.sk-fading-circle .sk-circle4:before { animation-delay: -0.9s; }
… //为缩减篇幅省略中间代码
.sk-fading-circle .sk-circle12:before { animation-delay: -0.1s; }
로그인 후 복사

12개의 점이 있으므로 각 점의 깜박임 간격은 0.1초이므로 첫 번째 점이 애니메이션 지연이 없으며 즉시 깜박입니다. 두 번째 점은 -1.1초부터 깜박이기 시작합니다. (음수를 이해하지 못하는 경우 애니메이션 기사를 참조하세요. 이는 이 시점부터 시작되며 이전 애니메이션 효과가 표시되지 않는다는 의미입니다.) 그 이후에는 각 도트가 0.1초씩 지연됩니다. 드디어 일반적인 국화 돌리기 로딩 효과가 형성되었습니다

이 사례 연구를 통해 로딩을 사용하여 애니메이션 효과를 만드는 방법을 완벽하게 마스터했다고 믿습니다. 더 흥미로운 콘텐츠를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

관련 읽기:

캔버스를 사용하여 공과 마우스 사이의 상호 작용을 구현하는 방법

캔버스를 사용하여 입자 분수 애니메이션 효과를 만드는 방법

css3 파급 효과를 표시하려면 클릭하세요

위 내용은 CSS3에서 로딩 애니메이션 효과를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

순수한 CSS3로 물결 효과를 얻는 방법은 무엇입니까? (코드 예) 순수한 CSS3로 물결 효과를 얻는 방법은 무엇입니까? (코드 예) Jun 28, 2022 pm 01:39 PM

순수한 CSS3로 물결 효과를 얻는 방법은 무엇입니까? 이 기사에서는 SVG 및 CSS 애니메이션을 사용하여 물결 효과를 만드는 방법을 소개합니다. 도움이 되길 바랍니다.

CSS를 능숙하게 사용하여 다양한 이상한 모양의 버튼 구현(코드 포함) CSS를 능숙하게 사용하여 다양한 이상한 모양의 버튼 구현(코드 포함) Jul 19, 2022 am 11:28 AM

이 글에서는 CSS를 활용하여 자주 나타나는 다양한 모양의 버튼을 쉽게 구현하는 방법을 알려드리겠습니다. 도움이 되셨으면 좋겠습니다.

공간을 차지하지 않고 CSS에서 요소를 숨기는 방법 공간을 차지하지 않고 CSS에서 요소를 숨기는 방법 Jun 01, 2022 pm 07:15 PM

두 가지 방법: 1. 표시 속성을 사용하여 요소에 "display:none;" 스타일을 추가합니다. 2. 요소를 숨기려면 위치 및 상단 속성을 사용하여 요소의 절대 위치를 설정하세요. 요소에 "position:absolute;top:-9999px;" 스타일을 추가하세요.

CSS3에서 레이스 테두리를 구현하는 방법 CSS3에서 레이스 테두리를 구현하는 방법 Sep 16, 2022 pm 07:11 PM

CSS에서는 border-image 속성을 사용하여 레이스 테두리를 만들 수 있습니다. border-image 속성은 이미지를 사용하여 테두리를 생성할 수 있습니다. 즉, 배경 이미지를 레이스 스타일로 지정하기만 하면 됩니다. "border-image: url(이미지 경로)은 이미지 테두리 너비가 안쪽으로 반복되는지 여부입니다.

텍스트 캐러셀과 이미지 캐러셀도 순수 CSS를 사용하여 구현할 수 있다는 것이 밝혀졌습니다! 텍스트 캐러셀과 이미지 캐러셀도 순수 CSS를 사용하여 구현할 수 있다는 것이 밝혀졌습니다! Jun 10, 2022 pm 01:00 PM

텍스트 회전판과 이미지 회전판을 만드는 방법은 무엇입니까? 누구나 가장 먼저 생각하는 것은 js를 사용할지 여부입니다. 실제로 순수 CSS를 사용하여 구현하는 방법도 모두에게 도움이 되기를 바랍니다.

CSS3에서 마우스를 클릭하여 이미지를 확대하는 방법 CSS3에서 마우스를 클릭하여 이미지를 확대하는 방법 Apr 25, 2022 pm 04:52 PM

구현 방법: 1. ":active" 선택기를 사용하여 그림에 대한 마우스 클릭 상태를 선택합니다. 2. 변환 속성과 scale() 함수를 사용하여 그림 확대 효과를 얻습니다. 구문은 "img:active {transform; : scale(x축 배율, y축 배율);}".

Vue에서 전역 로딩 효과를 구현하는 방법 Vue에서 전역 로딩 효과를 구현하는 방법 Jun 11, 2023 am 09:05 AM

프런트 엔드 개발에서는 사용자가 웹 페이지와 상호 작용하는 동안 데이터가 로드될 때까지 기다려야 하는 경우가 종종 있습니다. 이때 일반적으로 사용자에게 기다리도록 상기시키는 로딩 효과가 표시됩니다. Vue 프레임워크에서는 전역 로딩 효과를 구현하는 방법이 어렵지 않습니다. 1단계: Vue 플러그인 생성 모든 Vue 인스턴스에서 참조할 수 있는 loading이라는 Vue 플러그인을 생성할 수 있습니다. 플러그인에서는 다음 두 가지 방법을 구현해야 합니다.

CSS3에서 애니메이션 회전 속도를 설정하는 방법 CSS3에서 애니메이션 회전 속도를 설정하는 방법 Apr 28, 2022 pm 04:32 PM

CSS3에서는 "animation-timing-function" 속성을 사용하여 애니메이션 회전 속도를 설정할 수 있습니다. 이 속성은 애니메이션이 순환을 완료하는 방법을 지정하고 애니메이션의 속도 곡선을 설정하는 데 사용됩니다. 애니메이션 타이밍 기능: 속도 속성 값;}".

See all articles