この記事では、CSSアニメーションでダイナミックなバブル背景を実現する方法について、主に関連情報を紹介します。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。
今日の最初のタスクは、ログインページを作成することです。リンクをクリックすると、参照 (chao) テスト (xi) ケースが表示されます。確かに、このログイン ページは非常に簡潔でエレガントで、特にバブルの背景は動的な画像であるべきだと思いましたが、レビュー要素を開いた後、それがコードで記述されていることがわかり、突然赤ちゃんの好奇心を呼び起こしました。 . そこで、バブルの背景を使用してログイン ページを作成しようとしました。その結果は次のとおりです。
えっと...アップロードされた GIF アニメーションがいつもとても小さいのはなぜですか? スクリーンショットを追加しましょう:
(皆さん、これらの背景の泡が自分で上がっている絵を想像してみてください:すすり泣き:)
この効果は、いくつかの簡単なコードだけで実現できます。
まず、10 個の li リスト タグを定義します。私は vue フレームワークを使用します。
<ul class="bg-bubbles"> <li v-for="(item, index) in bubbles" :key="index"></li> </ul>
created() { this.bubbles.length = 10; },
スタイルはlessで書かれています:
.bg-bubbles { position: absolute; // 使气泡背景充满整个屏幕 top: 0; left: 0; width: 100%; height: 100%; li { position: absolute; // bottom 的设置是为了营造出气泡从页面底部冒出的效果; bottom: -160px; // 默认的气泡大小; width: 40px; height: 40px; background-color: rgba(255, 255, 255, 0.15); list-style: none; // 使用自定义动画使气泡渐现、上升和翻滚; animation: square 15s infinite; transition-timing-function: linear; // 分别设置每个气泡不同的位置、大小、透明度和速度,以显得有层次感; &:nth-child(1) { left: 10%; } &:nth-child(2) { left: 20%; width: 90px; height: 90px; animation-delay: 2s; animation-duration: 7s; } &:nth-child(3) { left: 25%; animation-delay: 4s; } &:nth-child(4) { left: 40%; width: 60px; height: 60px; animation-duration: 8s; background-color: rgba(255, 255, 255, 0.3); } &:nth-child(5) { left: 70%; } &:nth-child(6) { left: 80%; width: 120px; height: 120px; animation-delay: 3s; background-color: rgba(255, 255, 255, 0.2); } &:nth-child(7) { left: 32%; width: 160px; height: 160px; animation-delay: 2s; } &:nth-child(8) { left: 55%; width: 20px; height: 20px; animation-delay: 4s; animation-duration: 15s; } &:nth-child(9) { left: 25%; width: 10px; height: 10px; animation-delay: 2s; animation-duration: 12s; background-color: rgba(255, 255, 255, 0.3); } &:nth-child(10) { left: 85%; width: 160px; height: 160px; animation-delay: 5s; } } // 自定义 square 动画; @keyframes square { 0% { opacity: 0.5; transform: translateY(0px) rotate(45deg); } 25% { opacity: 0.75; transform: translateY(-400px) rotate(90deg) } 50% { opacity: 1; transform: translateY(-600px) rotate(135deg); } 100% { opacity: 0; transform: translateY(-1000px) rotate(180deg); } } }
この時点で、バブルの背景画像が完成します。振り返ってみると、確かに難しいことではありませんが、CSS アニメーション :relaxed: の魅力と威力を感じる人が増えています。
関連おすすめ:
Photoshop CS5 バラエティブラシチュートリアル - ファンタジーバブル背景
Web ページの背景画像を実現する CSS のアダプティブフルスクリーン詳細説明
以上がCSSで動的なバブル背景のコード共有を実現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。