CSSで雪を降らせる! 初心者向け徹底解説、サンプルコード付き

CSSで雪を降らせるウェブページのサンプルCSS
この記事は約4分で読めます。

 

【サイト内のコードはご自由に個人利用・商用利用いただけます】

この記事では、プログラムの基礎知識を前提に話を進めています。

説明のためのコードや、サンプルコードもありますので、もちろん初心者でも理解できるように表現してあります。

基本的な知識があればカスタムコードを使って機能追加、目的を達成できるように作ってあります。

※この記事は、一般的にプロフェッショナルの指標とされる『実務経験10,000時間以上』を凌駕する現役のプログラマチームによって監修されています。

サイト内のコードを共有する場合は、参照元として引用して下さいますと幸いです

※Japanシーモアは、常に解説内容のわかりやすさや記事の品質に注力しております。不具合、分かりにくい説明や不適切な表現、動かないコードなど気になることがございましたら、記事の品質向上の為にお問い合わせフォームにてご共有いただけますと幸いです。
(送信された情報は、プライバシーポリシーのもと、厳正に取扱い、処分させていただきます。)

はじめに

こんにちは!今回はCSSで雪を降らせる方法について、初心者目線で徹底解説します。

サンプルコードと応用例付きなので、あなたも簡単に雪を降らせるウェブページが作れるようになります。

それでは始めましょう!

●基本的な雪の降らせ方

まずは、基本的な雪を降らせるCSSのコードをご紹介します。

こちらのコードをHTMLファイルに貼り付けるだけで、雪が降るウェブページが完成します。

<!DOCTYPE html>
<html>
<head>
<style>
  .snowflake {
    position: absolute;
    width: 10px;
    height: 10px;
    background: white;
    border-radius: 50%;
    animation: fall 5s linear infinite, sway 3s linear infinite;
  }

  @keyframes fall {
    0% { top: -10px; }
    100% { top: 100%; }
  }

  @keyframes sway {
    0%, 100% { transform: translateX(0); }
    50% { transform: translateX(50px); }
  }
</style>
</head>
<body>
  <div class="snowflake"></div>
  <div class="snowflake" style="left: 100px; animation-delay: 1s;"></div>
  <div class="snowflake" style="left: 200px; animation-delay: 2s;"></div>
  ...
</body>
</html>

このコードでは、.snowflakeというクラスを作成し、その中に雪の見た目やアニメーションを定義しています。

それぞれの雪の要素に適用することで、雪が降るアニメーションが実現されます。

●雪の数や大きさを変更する方法

次に、雪の数や大きさを変更する方法を解説します。

例えば、雪の数を増やしたい場合は、HTMLファイルの中にある<div class="snowflake"></div>を追加するだけです。

また、雪の大きさを変えたい場合は、.snowflakeクラスのwidthheightの値を調整してください。

.snowflake {
  width: 15px;
  height: 15px;
  ...
}

これで、雪の大きさが変更されます。

●雪の速度や風の向きを変更する方法

雪の速度や風の向きを変えることで、よりリアルな雪の降るアニメーションを作成できます。

その方法は、@keyframes fall@keyframes swayのアニメーションを調整することです。

例えば、雪の速度を遅くしたい場合は、fallアニメーションの5sという値を大きくしてください。

逆に速くしたい場合は、その値を小さくします。

@keyframes fall {
  ...
  animation: fall 7s linear infinite, sway 3s linear infinite;
  ...
}

また、風の向きを変える場合は、swayアニメーションのtranslateX()の値を変更します。

値が大きいほど風が強く、小さいほど弱くなります。

@keyframes sway {
  ...
  50% { transform: translateX(70px); }
  ...
}

●応用例1:雪の色を変える

雪の色を変えることで、さらに個性的な雪の降るアニメーションを作成できます。

その方法は、.snowflakeクラスのbackgroundプロパティを変更するだけです。

.snowflake {
  ...
  background: pink;
  ...
}

これで、ピンク色の雪が降るアニメーションが完成します。

●応用例2:雪の形を変える

さらに、雪の形を変えることで、よりリアルな雪の降るアニメーションを作成できます。

その方法は、.snowflakeクラスのborder-radiusプロパティを変更するだけです。

.snowflake {
  ...
  border-radius: 20%;
  ...
}

これで、四角い雪が降るアニメーションが完成します。

まとめ

以上が、CSSで雪を降らせる方法の基本的な使い方と応用方法です。

この知識を活かして、あなたのウェブページにも雪を降らせて、訪問者に楽しいサイトを提供しましょう!