>  기사  >  웹 프론트엔드  >  CSS3를 사용하여 스타일을 통해 웹페이지 요소에 애니메이션 적용

CSS3를 사용하여 스타일을 통해 웹페이지 요소에 애니메이션 적용

零下一度
零下一度원래의
2017-04-22 13:41:222280검색

css3를 사용하면 자바스크립트나 플래시를 사용하지 않고도 스타일을 통해 웹 요소에 애니메이션을 적용할 수 있어 웹사이트를 더욱 멋지게 만들 수 있습니다.

css3 전환

trainsition 속성을 사용하여 요소 스타일을 지정할 수 있습니다. 지원되는 브라우저 교육을 통해 ie10, Firefox, Chrome 및 Opera가 포함됩니다.

먼저 trainsition의 여러 속성을 살펴보겠습니다.

trainsition-property: 애플리케이션 전환의 CSS 속성 이름을 지정합니다.

trainsition-duration: 과도한 시간 소요를 지정합니다.

trainsiton-timing-function: 전환 시간 곡선을 지정합니다.

trainsition-delay: 전환이 시작되는 시기를 지정합니다.

먼저 간단한 전환 예시를 살펴보겠습니다. 데모.css에

p{
width:100px;
height:100px;
background:red;
trainsition:width 3s,height 2s;//在这里为了方便,将过渡属性简写了,我们可以将过渡属性简写为trainsition:加上上面四个属性,可以把默认属性省略。
}

p:hover
{
width:300px;
height:200px;
}

demo.html에

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet"  href="demo.css"/>
</head>
<body>

<p></p>

</body>
</html>

를 입력하세요. 빨간색 p 블록 위로 마우스를 이동하면 빨간색 블록의 길이와 너비가 천천히 증가하는 것을 볼 수 있습니다. 이것이 가장 간단한 전환입니다. 성취하다.

참고: 전환 시간을 설정하지 않으면 기본적으로 0이 됩니다. 전환 효과가 없습니다.

우리가 더 자주 사용하는 방법은 js를 통해 스타일을 추가하여 다양한 애니메이션 전환을 연습하는 것입니다.

<!DOCTYPE html>
<html>
<head>
<script src="/jquery/jquery-1.11.1.min.js"></script>
<style>
p{
   background:red;
   width:200px;
   height:200px;
   transition:width 2s,height 2s;
}
p.over{
width:300px;
height:300px;
}
</style>
</head>
 
<body>
<p 
</p>
<script> 
$(&#39;p&#39;).hover(function(){
  $(&#39;p&#39;).addClass(&#39;over&#39;);},
  function(){
    $(&#39;p&#39;).removeClass(&#39;over&#39;);
});
</script> 
</body>
</html>

수정된 코드에서는 jquery를 사용하여 마우스가 지나갈 때 오버 스타일을 추가하고 마우스가 떠날 때 오버 스타일을 제거합니다. 전환 애니메이션이 구현되었습니다.

그러나 위에서 스타일 변경을 구현했지만, 초기 상태에서 최종 상태로 변경되는 것을 알 수 있고 그 한계도 매우 크다. , 그래서 중간 단계의 변환 상태가 있기를 바랍니다. 이때 키프레임 애니메이션(@keyframes)이 사용됩니다:

기본 형식은

@keyframes Name{

시점{요소상태}

....

예를 들어

@frames chgground{
    from{ backgroud:red;}
    to{backgroud:yellow;}
}

를 사용하여 키프레임 애니메이션을 정의한 다음 이를 적용할 요소에 바인딩할 수 있습니다.

p{
animation:chgbackground 3s;
}

우리는 다음을 사용합니다. 이 요소의 속성은 다음과 같습니다.


p 그런 다음 백분율을 사용하여 키 프레임의 상태를 0%로 지정할 수도 있습니다. .100, 다음 코드

@frames chgbackground{  
0%{background:yellow;}  
50%{background:red;}  
100%{background:black;}  
}

t는 이 코드를 사용하여 배경에 0%에서 50%, 50%에서 100%까지 다양한 그라데이션 효과를 얻습니다.


animate.css를 사용하려면 animate.css를 다운로드하고 파일을 참조한 후 다음과 같이 다양한 효과를 얻는 데 필요한 특정 애니메이션 클래스 이름을 추가하세요.

< ;script>$( 'p').addClass('shake');2cacc6d41bbb37262a98f745aa00fbf0요소 흔들기 효과를 쉽게 추가할 수 있습니다.

위 내용은 CSS3를 사용하여 스타일을 통해 웹페이지 요소에 애니메이션 적용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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