ホームページ ウェブフロントエンド H5 チュートリアル リアルな HTML5 落ち葉アニメーション_html5 チュートリアル スキル

リアルな HTML5 落ち葉アニメーション_html5 チュートリアル スキル

May 16, 2016 pm 03:45 PM
html5 アニメーション

この HTML5 の葉が落ちるアニメーションは Webkit コアに基づいています。つまり、このアニメーションは Webkit コアを備えたブラウザーでのみ使用できます。

ソース コードのダウンロード デモ アドレス

HTML コード

XML/HTML コードコンテンツをクリップボードにコピー
  1. <div id="コンテナ" >
  2. <div id="leafContainer" >div>
  3. <div id="メッセージ" >
  4. < /
  5. em> div>
  6. div>
  7. CSS コード CSS コードコンテンツをクリップボードにコピーします
    1. #container {
    2. 位置: 相対;   
    3. 高さ: 700px;   
    4. : 500px;   
    5. マージン: 10px 自動;   
    6. オーバーフロー: 非表示;   
    7. ボーダー: 4px solid #5C090A;   
    8. 背景: #4E4226 url('images/backgroundLeaves.jpg') 繰り返しなし トップ ;   
    9. }
    10. /* leafContainer div の位置 と 寸法 を定義します */
    11. #leafContainer
    12. {
    13. 位置: 絶対;   
    14. : 100%;   
    15. 身長: 100%;   
    16. }  
    17. /* メッセージ div の外観、位置、寸法を定義します*/
    18. #message
    19. {
    20. 位置: 絶対;   
    21. トップ: 160px;   
    22. : 100%;   
    23. 高さ: 300px;   
    24. 背景:透明 url( 'images/textBackground.png')繰り返し-x 中央;   
    25. カラー: #5C090A;   
    26. フォントサイズ: 220%;   
    27. フォントファミリー: 'Georgia';   
    28. text-align: center;   
    29. パディング: 20px 10px;   
    30. -webkit-box-sizing: border-box;   
    31. -ウェブキット-背景-サイズ: 100% 100%;   
    32. z-index: 1;   
    33. }
    34. p {
    35. マージン: 15px;   
    36. }
    37. a
    38. {
    39. カラー: #5C090A;   
    40. テキスト装飾: なし;   
    41. }
    42. /*「Dino's Gardening Service」メッセージの色を設定します*/
    43. em
    44. {
    45. font-weight: 太字;   
    46. フォント スタイル: 通常;   
    47. }
    48. .phone {
    49. フォントサイズ: 150%;   
    50. vertical-align: middle;   
    51. }  
    52. /* この CSS ルールは、leafContainer div 内のすべての div 要素に適用されます。
    53. 各リーフディビジョンのスタイルを設定し、アニメーション化します。
    54. */
    55. #leafContainer > div
    56. {
    57. 位置: 絶対;   
    58. : 100px;   
    59. 高さ: 100px;   
    60. /* 次のプロパティを使用して、フェード アニメーションとドロップ アニメーションを各リーフに適用します。
    61. これらの各プロパティは 2 つの値を取ります。 これらの値はそれぞれ、設定
    62. に一致します。
    63. フェードとドロップの場合。
    64. */
    65. -webkit-animation-iteration-count: 無限、 無限;   
    66. -webkit-animation-方向: 通常通常;   
    67. -webkit-animation-timing-function: リニア、イーズイン;   
    68. }  
    69. /* この CSS ルールは、
    70. である div 要素内のすべての img 要素に直接適用されます。
    71. leafContainer div 内に直接あります。 つまり、「img」要素
    72. と一致します。
    73. createALeaf() 関数で作成される leafDiv 内。
    74. */
    75. #leafContainer > ディビジョン> img {
    76. 位置: 絶対;   
    77. : 100px;   
    78. 高さ: 100px;   
    79. /* 時計回りのスピンまたは反時計回りのスピンアンドフリップを調整するには、次のプロパティを使用します
    80. 各リーフのアニメーション。
    81. Leaves.js ファイル内の createALeaf 関数は、リーフに
    82. があるかどうかを判断します。
    83. 時計回りスピン​​または反時計回りスピン​​アンドフリップアニメーション。
    84. */
    85. -webkit-animation-iteration-count: 無限;   
    86. -webkit-animation-方向: 代替;   
    87. -webkit-animation-timing-function: ease-in-out;   
    88. -webkit-transform-origin: 50% -100%;   
    89. }
    90. /* アニメーションの最後に向かって葉を非表示にします */
    91. @-webkit-keyframes フェード
    92. {
    93. /* アニメーションの 95 パーセント以下の間は葉を表示し、それ以外の場合は非表示にする */
    94. 0% { 不透明度: 1; }
    95. 95% { 不透明度: 1; }
    96. 100% { 不透明度: 0; }
    97. }  
    98. /* y 軸で -300 から 600 ピクセル に葉を落とします */
    99. @-webkit-keyframes ドロップ
    100. {
    101. /* アニメーションの開始時に葉を Y 軸の -300 ピクセルに移動します*/
    102. 0% { -webkit-transform: translate(0px,-50px); }
    103. /* アニメーションの終了時に葉を Y 軸の 600 ピクセルに移動します*/
    104. 100% { -webkit-transform: translate(0px, 650px); }
    105. }
    106. /* 2D 空間で葉を -50 度から 50 度まで回転します*/
    107. @-webkit-keyframes 時計回りに回転
    108. {
    109. /* アニメーションの開始時に 2D 空間で葉を -50 度回転します*/
    110. 0% { -webkit-transform: rotate(-50deg); }
    111. /* アニメーションの終了時に 2D 空間で葉を 50 度回転します*/
    112. 100% { -webkit-transform: rotate(50deg); }
    113. }
    114. /* 葉を反転し、2D 空間で 50 度から -50 度まで回転します*/
    115. @-webkit-keyframes 反時計回りSpinAndFlip
    116. {
    117. /* アニメーションの開始時に、葉を裏返し、2D 空間で 50 度回転します*/
    118. 0% { -webkit-transform: scale(-1, 1) rotate(50deg); }
    119. /* アニメーションの最後に、葉を反転し、2D 空間で -50 度回転します*/
    120. 100% { -webkit-transform: scale(-1, 1) rotate(-50deg); }
    121. }

JavaScript 代

JavaScript コード复制コンテンツ到剪贴板
  1. /* アニメーションで使用される葉の数を定義します */
  2. const NUMBER_OF_LEAVES = 30;   
  3. /*
  4. 「Falling Leaves」ページが完全に読み込まれると呼び出されます。
  5. */
  6. 関数 init()
  7. {
  8. /* 葉を含む要素への参照を取得します */
  9. var container = document.getElementById('leafContainer');   
  10. /* 空のコンテナに新しい葉を詰める */
  11. for (var i = 0; i < NUMBER_OF_LEAVES; i )
  12. {
  13. container.appendChild(createALeaf());   
  14. }
  15. }
  16. /*
  17. 範囲の最小値と最大値を受け取ります。
  18. その範囲内にあるランダムな整数を返します。
  19. */
  20. 関数 randomInteger(low, high)
  21. {
  22. return low Math.floor(Math.random() * (high - low));   
  23. }
  24. /*
  25. 範囲の最小値と最大値を受け取り、
  26. は、その範囲内にあるランダムな浮動小数点数を返します。
  27. */
  28. 関数 randomFloat(low, high)
  29. {
  30. return low Math.random() * (high - low);   
  31. }
  32. /*
  33. 数値を受け取り、その CSS ピクセル値を返します。
  34. */
  35. 関数 pixelValue(値)
  36. {
  37. return'px';   
  38. }  
  39. /*
  40. 落下アニメーションの継続時間の値を返します。
  41. */
  42. 関数 durationValue(値)
  43. {
  44. ;   
  45. }  
  46. /*
  47. img 要素 を使用して各リーフを作成します。 「Leaves.css」は 2 つのスピンを実装します
  48. 葉のアニメーション:時計回りのスピンと反時計回りのスピンアンドフリップ。 この
  49. 関数は、これらのスピン アニメーションのどれを各リーフに適用するかを決定します。
  50. */
  51. 関数 createALeaf()
  52. {
  53. /* ラッパー div と空の img 要素を作成することから始めます*/
  54. var leafDiv = document.createElement('div');   
  55. var image = document.createElement('img');   
  56. /* 葉の画像をランダムに選択し、新しく作成された要素に割り当てます*/
  57. image.src = 'images/realLeaf' randomInteger(1, 5) '.png';   
  58. leafDiv.style.top = "-100px";   
  59. /* 画面に沿ったランダムな位置にリーフを配置します */
  60. leafDiv.style.left = pixelValue(randomInteger(0, 500));   
  61. /* スピン アニメーションをランダムに選択 */
  62. var spinAnimationName = (Math.random() < 0.5) ? '時計回りSpin' : '反時計回りSpinAndFlip';   
  63. /* -webkit-animation-name プロパティにこれらの値を設定します */
  64. leafDiv.style.webkitAnimationName = 'フェード、ドロップ';   
  65. image.style.webkitAnimationName = spinAnimationName;   
  66. /* フェード アンド ドロップ アニメーションのランダムな継続時間を計算します */
  67. var fadeAndDropDuration = durationValue(randomFloat(5, 11));   
  68. /* スピンアニメーションの別のランダムな期間を計算します */
  69. var spinDuration = durationValue(randomFloat(4, 8));   
  70. /* -webkit-animation-duration プロパティにこれらの値を設定します */
  71. leafDiv.style.webkitAnimationDuration = fadeAndDropDuration ', ' fadeAndDropDuration;   
  72. var leafDelay = durationValue(randomFloat(0, 5));   
  73. leafDiv.style.webkitAnimationDelay = leafDelay ', ' leafDelay;   
  74. image.style.webkitAnimationDuration = spinDuration;   
  75. // リアルな HTML5 落ち葉アニメーション_html5 チュートリアル スキル を追加します。 
  76. leafDiv.appendChild(画像);   
  77. /* この img 要素を返して、ドキュメントに追加できるようにします */
  78. return leafDiv;   
  79. }
  80. /* 「Falling Leaves」ページがフルロードされたときに init 関数を呼び出します */
  81. window.addEventListener('load', init, false);   

以上が本書のすべての内容であり、大家学に役立つことが望まれます。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

HTMLの表の境界線 HTMLの表の境界線 Sep 04, 2024 pm 04:49 PM

HTML の表の境界線に関するガイド。ここでは、HTML でのテーブルの境界線の例を示しながら、テーブル境界線を定義する複数の方法について説明します。

HTML 左マージン HTML 左マージン Sep 04, 2024 pm 04:48 PM

HTML マージン左のガイド。ここでは、HTML margin-left の概要とその例、およびそのコード実装について説明します。

HTML のネストされたテーブル HTML のネストされたテーブル Sep 04, 2024 pm 04:49 PM

これは、HTML でのネストされたテーブルのガイドです。ここでは、テーブル内にテーブルを作成する方法をそれぞれの例とともに説明します。

HTML テーブルのレイアウト HTML テーブルのレイアウト Sep 04, 2024 pm 04:54 PM

HTML テーブル レイアウトのガイド。ここでは、HTML テーブル レイアウトの値と例および出力について詳しく説明します。

HTML入力プレースホルダー HTML入力プレースホルダー Sep 04, 2024 pm 04:54 PM

HTML 入力プレースホルダーのガイド。ここでは、コードと出力とともに HTML 入力プレースホルダーの例について説明します。

HTML 内のテキストの移動 HTML 内のテキストの移動 Sep 04, 2024 pm 04:45 PM

HTML でのテキストの移動に関するガイド。ここでは、概要、マーキー タグが構文でどのように機能するか、および実装例について説明します。

HTML 順序付きリスト HTML 順序付きリスト Sep 04, 2024 pm 04:43 PM

HTML 順序付きリストのガイド。ここでは、HTML 順序付きリストと型の導入とその例についても説明します。

HTML の onclick ボタン HTML の onclick ボタン Sep 04, 2024 pm 04:49 PM

HTML オンクリック ボタンのガイド。ここでは、それらの紹介、動作、例、およびさまざまなイベントでの onclick イベントについてそれぞれ説明します。

See all articles