찾다
웹 프론트엔드H5 튜토리얼현실적인 HTML5 나뭇잎 떨어지는 animation_html5 튜토리얼 기술

이 HTML5 나뭇잎 떨어지는 애니메이션은 웹킷 코어를 기반으로 합니다. 즉, 이 애니메이션은 웹킷 코어가 있는 브라우저에서만 사용할 수 있습니다.

소스코드 다운로드 데모주소

HTML 코드

XML/HTML 코드클립보드에 콘텐츠 복사
  1. div id="컨테이너" >
  2. div id="leafContainer" >div>
  3. div id="메시지" >
  4. > div>
  5. div>
  6. CSS 코드 CSS 코드클립보드에 콘텐츠 복사
    1. #container {   
    2.     직위친척;   
    3.     높이700px;   
    4.     너비500px;   
    5.     여백10px 자동;   
    6.     오버플로숨김;   
    7.     테두리4px 단단함 #5C090A;   
    8.     배경#4E4226 url('images/BackgroundLeaves.jpg'반복 금지 상단 왼쪽;   
    9. }   
    10.   
    11. /* leafContainer div의 위치와 크기를 정의합니다.*/ 
    12. #leafContainer    
    13. {   
    14.     위치절대;   
    15.     너비: 100%;   
    16.     높이: 100%;   
    17. }  
    18.   
    19. /* 메시지 div의 모양, 위치 및 크기를 정의합니다.*/ 
    20. #message   
    21. {   
    22.     위치절대;   
    23.     상단160px;   
    24.     너비: 100%;   
    25.     높이300px;   
    26.     배경:투명 URL( 'images/textBackground.png'반복-x center;   
    27.     색상#5C090A;   
    28.     글꼴 크기: 220%;   
    29.     글꼴군'조지아';   
    30.     텍스트 정렬가운데;   
    31.     패딩20px 10px;   
    32.     -webkit-box-sizing: 테두리-box;   
    33.     -webkit-배경-크기: 100% 100%;   
    34.     z-색인: 1;   
    35. }   
    36.   
    37. p {   
    38.   여백15px;   
    39. }   
    40.   
    41. 아   
    42. {   
    43.   색상#5C090A;   
    44.   텍스트 장식없음;   
    45. }   
    46.   
    47. /* '공룡의 가드닝 서비스' 메시지 색상 설정 */ 
    48. em    
    49. {   
    50.     글꼴 두께굵게;   
    51.     글꼴 스타일일반;   
    52. }   
    53.   
    54. .phone {   
    55.   글꼴 크기: 150%;   
    56.   세로 정렬가운데;   
    57. }  
    58.   
    59. /* 이 CSS 규칙은 leafContainer div의 모든 div 요소에 적용됩니다.  
    60.    각 leafDiv의 스타일을 지정하고 애니메이션을 적용합니다.  
    61. */  
    62. #leafContainer > div    
    63. {   
    64.     위치절대;   
    65.     너비100px;   
    66.     높이100px;   
    67.   
    68.     /* 다음 속성을 사용하여 각 잎에 페이드 및 드롭 애니메이션을 적용합니다.  
    69.        이러한 각 속성은 두 가지 값을 갖습니다. 이러한 값은 각각 설정  
    70. 과 일치합니다.
    71.        페이드 앤 드롭용.  
    72.     */  
    73.     -webkit-animation-iteration-count: 무한, 무한;   
    74.     -webkit-animation-방향정상정상;   
    75.     -webkit-animation-timing-function: 선형, ease-in;   
    76. }  
    77.   
    78. /* 이 CSS 규칙은  
    79. 인 div 요소 내부의 모든 img 요소에 직접 적용됩니다.
    80.    leafContainer div 내부에서 직접 즉, 'img' 요소
    81. 와 일치합니다.
    82. createALeaf() 함수에서 생성된 leafDivs 내부.  
    83. */  
    84. #leafContainer > div > img {   
    85.      위치절대;   
    86.      너비100px;   
    87.      높이100px;   
    88.   
    89.     /* 우리는 다음 속성을 사용하여 시계방향Spin 또는 반시계방향SpinAndFlip  
    90. 을 조정합니다.
    91.        각 잎에 애니메이션이 표시됩니다.  
    92.        Leaves.js 파일의 createALeaf 함수는 리프에  
    93. 이 있는지 여부를 결정합니다.
    94.        시계 방향 회전 또는 시계 반대 방향 회전 및 뒤집기 애니메이션.  
    95.     */  
    96.      -webkit-animation-iteration-count: 무한;   
    97.      -webkit-animation-방향: 대체;   
    98.      -webkit-animation-timing-function: ease-in-out;   
    99.      -webkit-transform-origin: 50% -100%;   
    100. }   
    101.   
    102. /* 애니메이션의 끝 부분에 나뭇잎을 숨깁니다.*/ 
    103. @-webkit-keyframes 페이드   
    104. {   
    105.     /* 애니메이션의 95% 이하에 있는 동안 나뭇잎을 표시하고 숨깁니다. 그렇지 않으면 */  
    106.     0%   { 불투명도: 1; }   
    107.     95%  { 불투명도: 1; }   
    108.     100% { 불투명도: 0; }   
    109. }  
    110.   
    111. /* Y축에서 -300~600픽셀에서 나뭇잎을 떨어뜨립니다.*/  
    112. @-webkit-keyframes drop   
    113. {   
    114.     /* 애니메이션 시작 부분의 y축에서 리프를 -300픽셀로 이동합니다.*/ 
    115.     0%   { -webkit-transform: translate(0px, -50px); }   
    116.     /* 애니메이션 끝의 y축에서 리프를 600픽셀로 이동합니다.*/ 
    117.     100% { -webkit-transform: translate(0px650px); }   
    118. }   
    119.   
    120. /* 2D 공간에서 리프를 -50도에서 50도까지 회전합니다.*/  
    121. @-webkit-keyframes clockwiseSpin   
    122. {   
    123.     /* 애니메이션 시작 시 2D 공간에서 잎을 -50도 회전합니다.*/ 
    124.     0%   { -webkit-transform: 회전(-50도); }   
    125.     /* 애니메이션 끝의 2D 공간에서 잎을 50도 회전합니다.*/ 
    126.     100% { -webkit-transform: 회전(50도); }   
    127. }   
    128.   
    129. /* 나뭇잎을 뒤집고 2D 공간에서 50도에서 -50도로 회전합니다.*/ 
    130. @-webkit-keyframes counterclockwiseSpinAndFlip    
    131. {   
    132.     /* 애니메이션 시작 시 나뭇잎을 뒤집고 2D 공간에서 50도 회전합니다.*/ 
    133.     0%   { -webkit-transform: 배율(-1, 1) 회전(50도); }   
    134.     /* 애니메이션 끝의 2D 공간에서 나뭇잎을 뒤집고 -50도 회전합니다.*/ 
    135.     100% { -webkit-transform: 배율(-1, 1) 회전(-50deg); }   
    136. }   

JavaScript대码

JavaScript 코드复复内容到剪贴板
  1. /* 애니메이션에 사용할 나뭇잎 수 정의 */ 
  2. const NUMBER_OF_LEAVES = 30;   
  3.   
  4. /*   
  5.     'Falling Leaves' 페이지가 완전히 로드되면 호출됩니다.  
  6. */  
  7. 함수 init()   
  8. {   
  9.     /* 나뭇잎을 포함할 요소에 대한 참조 가져오기*/ 
  10.     var 컨테이너 = document.getElementById('leafContainer');   
  11.     /* 빈 용기에 새 잎을 채웁니다.*/  
  12.     for (var i = 0; i 
  13.     {   
  14.         container.appendChild(createALeaf());   
  15.     }   
  16. }   
  17.   
  18. /*  
  19.     범위 및  
  20. 의 가장 낮은 값과 가장 높은 값을 수신합니다.
  21.     해당 범위에 속하는 임의의 정수를 반환합니다.  
  22. */  
  23. 함수 randomInteger(low, high)   
  24. {   
  25.     반품 낮음   Math.floor(Math.random() * (높음 - 낮음));   
  26. }   
  27.   
  28. /*  
  29.    범위 및  
  30. 의 가장 낮은 값과 가장 높은 값을 수신합니다.
  31.    해당 범위 내에 속하는 무작위 부동 소수점을 반환합니다.  
  32. */  
  33. 함수 randomFloat(낮음, 높음)   
  34. {   
  35.     반환 낮음   Math.random() * (높음 - 낮음);   
  36. }   
  37.   
  38. /*  
  39.     숫자를 수신하고 해당 CSS 픽셀 값을 반환합니다.  
  40. */  
  41. 함수 pixelValue(값)   
  42. {   
  43.     반환 값   'px';   
  44. }  
  45.   
  46. /*  
  47.     떨어지는 애니메이션의 지속 시간 값을 반환합니다.  
  48. */  
  49.   
  50. 함수 durationValue(값)   
  51. {   
  52.     return 값   의';   
  53. }  
  54.   
  55. /*  
  56.     img 요소를 사용하여 각 리프를 생성합니다. "Leaves.css"는 두 가지 회전을 구현합니다.  
  57. 나뭇잎에 대한 애니메이션: 시계방향Spin 및 시계 반대방향SpinAndFlip. 이  
  58.     함수는 이러한 회전 애니메이션 중 각 잎에 적용되어야 하는 애니메이션을 결정합니다.  
  59.  
  60. */  
  61. 함수 createALeaf()   
  62. {   
  63.     /* 래퍼 div와 빈 img 요소*/ 
  64. 를 만들어 시작합니다.
  65.     var leafDiv = document.createElement('div');   
  66.     var image = document.createElement('img');   
  67.   
  68.     /* 나뭇잎 이미지를 무작위로 선택하고 새로 생성된 요소에 할당합니다.*/ 
  69.     image.src = 'images/realLeaf'   randomInteger(1, 5)   '.png';   
  70.   
  71.     leafDiv.style.top = "-100px";   
  72.   
  73.     /* 화면을 따라 임의의 위치에 리프를 배치합니다.*/  
  74.     leafDiv.style.left = pixelValue(randomInteger(0, 500));   
  75.   
  76.     /* 무작위로 회전 애니메이션 선택 */  
  77.     var spinAnimationName = (Math.random() '시계 방향 회전' : '반시계 방향 회전 및 뒤집기';   
  78.   
  79.     /* -webkit-animation-name 속성을 다음 값으로 설정 */  
  80.     leafDiv.style.webkitAnimationName = '페이드, 드롭';   
  81.     image.style.webkitAnimationName = spinAnimationName;   
  82.   
  83.     /* 페이드 및 드롭 애니메이션의 무작위 지속 시간을 파악합니다.*/  
  84.     var fadeAndDropDuration = durationValue(randomFloat(5, 11));   
  85.   
  86.     /* 회전 애니메이션의 또 다른 무작위 지속 시간을 알아냅니다.*/  
  87.     var spinDuration = durationValue(randomFloat(4, 8));   
  88.     /* -webkit-animation-duration 속성을 다음 값으로 설정 */  
  89.     leafDiv.style.webkitAnimationDuration = fadeAndDropDuration   ', '   fadeAndDropDuration;   
  90.   
  91.     var leafDelay = durationValue(randomFloat(0, 5));   
  92.     leafDiv.style.webkitAnimationDelay = leafDelay   ', '   leafDelay;   
  93.   
  94.     image.style.webkitAnimationDuration = spinDuration;   
  95.   
  96.     // 현실적인 HTML5 나뭇잎 떨어지는 animation_html5 튜토리얼 기술 
      
  97.     leafDiv.appendChild(이미지);   
  98.   
  99.     /* 문서에 추가할 수 있도록 이 img 요소를 반환합니다.*/ 
  100.     반환 leafDiv;   
  101. }   
  102.   
  103. /* 'Falling Leaves' 페이지가 완전히 로드되면 init 함수를 호출합니다.*/ 
  104. window.addEventListener('load', init, false);   
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
html5的div一行可以放两个吗html5的div一行可以放两个吗Apr 25, 2022 pm 05:32 PM

html5的div元素默认一行不可以放两个。div是一个块级元素,一个元素会独占一行,两个div默认无法在同一行显示;但可以通过给div元素添加“display:inline;”样式,将其转为行内元素,就可以实现多个div在同一行显示了。

html5中列表和表格的区别是什么html5中列表和表格的区别是什么Apr 28, 2022 pm 01:58 PM

html5中列表和表格的区别:1、表格主要是用于显示数据的,而列表主要是用于给数据进行布局;2、表格是使用table标签配合tr、td、th等标签进行定义的,列表是利用li标签配合ol、ul等标签进行定义的。

html5怎么让头和尾固定不动html5怎么让头和尾固定不动Apr 25, 2022 pm 02:30 PM

固定方法:1、使用header标签定义文档头部内容,并添加“position:fixed;top:0;”样式让其固定不动;2、使用footer标签定义尾部内容,并添加“position: fixed;bottom: 0;”样式让其固定不动。

html5中不支持的标签有哪些html5中不支持的标签有哪些Mar 17, 2022 pm 05:43 PM

html5中不支持的标签有:1、acronym,用于定义首字母缩写,可用abbr替代;2、basefont,可利用css样式替代;3、applet,可用object替代;4、dir,定义目录列表,可用ul替代;5、big,定义大号文本等等。

HTML5中画布标签是什么HTML5中画布标签是什么May 18, 2022 pm 04:55 PM

HTML5中画布标签是“<canvas>”。canvas标签用于图形的绘制,它只是一个矩形的图形容器,绘制图形必须通过脚本(通常是JavaScript)来完成;开发者可利用多种js方法来在canvas中绘制路径、盒、圆、字符以及添加图像等。

html5废弃了哪个列表标签html5废弃了哪个列表标签Jun 01, 2022 pm 06:32 PM

html5废弃了dir列表标签。dir标签被用来定义目录列表,一般和li标签配合使用,在dir标签对中通过li标签来设置列表项,语法“<dir><li>列表项值</li>...</dir>”。HTML5已经不支持dir,可使用ul标签取代。

Html5怎么取消td边框Html5怎么取消td边框May 18, 2022 pm 06:57 PM

3种取消方法:1、给td元素添加“border:none”无边框样式即可,语法“td{border:none}”。2、给td元素添加“border:0”样式,语法“td{border:0;}”,将td边框的宽度设置为0即可。3、给td元素添加“border:transparent”样式,语法“td{border:transparent;}”,将td边框的颜色设置为透明即可。

html5为什么只需要写doctypehtml5为什么只需要写doctypeJun 07, 2022 pm 05:15 PM

因为html5不基于SGML(标准通用置标语言),不需要对DTD进行引用,但是需要doctype来规范浏览器的行为,也即按照正常的方式来运行,因此html5只需要写doctype即可。“!DOCTYPE”是一种标准通用标记语言的文档类型声明,用于告诉浏览器编写页面所用的标记的版本。

See all articles

핫 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를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

메모장++7.3.1

메모장++7.3.1

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

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.