ホームページ > 記事 > ウェブフロントエンド > CSS を使用して興味深いテキストスイングアニメーション効果を作成する
前回の記事『超実践! 「CSS3 を使用して 2 つの画像をオーバーレイして一緒に表示する」では、CSS3 を使用して 2 つの画像をオーバーレイして一緒に表示する 2 つの特殊効果を共有しました。今回は、CSS を使用してテキストスイングアニメーション効果を作成する方法を紹介します。興味がある場合は、学習してください~
テキストは、Web ページの最も一般的なコンポーネントです。テキストにアニメーション効果を追加するWeb ページをより魅力的に見せることができます。今日は CSS タイトル文字のスイングアニメーション効果を紹介します。ぜひご覧ください。
最初にレンダリングを見てみましょう:
この効果を実現する方法を検討してみましょう:
まず、 HTML 部分、テキストを含む h1 タイトルを定義します
<h1>Hello World !</h1>
次に、変更用の CSS スタイルの定義を開始します:
背景色
body { background: black; }
h1 タイトル テキスト スタイル、白いストロークを追加するには text-ストローク属性を使用します
h1 { text-align: center; margin: 200px auto; font-size: 4.5rem; font-family: arial; font-weight: 900; color: transparent; overflow: hidden; -webkit-text-stroke: 4px white; }
h1 タイトル テキスト スタイル、背景を使用しますシリーズ プロパティと Linear-gradient() を使用してテキストの背景を追加します
background: linear-gradient(45deg, black 30%, transparent 30%, transparent 70%, black 70%), linear-gradient(-45deg, black 30%, transparent 30%, transparent 70%, black 70%), linear-gradient(90deg, crimson 30%, transparent 30%, transparent 70%, crimson 70%)red; background-size: 20px 20px, 20px 20px, 1px 1px; background-position: 0 0, 0 0, 0 0; -webkit-background-clip: text;#h1 タイトル テキスト スタイルを追加します。フィルター プロパティを使用して境界線の影を追加します
#
filter: drop-shadow(0 0 1px black)drop-shadow(0 0 1px black)drop-shadow(0 0 1px black)drop-shadow(0 0 1px black)drop-shadow(0 0 1px black)drop-shadow(0 0 1px black)drop-shadow(0 0 1px black)drop-shadow(0 0 1px black)drop-shadow(0 0 2px crimson);
次のステップは、アニメーション効果を追加して、テキストをスイングさせ、テキストの背景も移動させることです (ディスプレイスメント効果を実現するため):
アニメーション アニメーションをバインドします。 h1 タグ。2 つのアニメーション bg-shifth とスイングを設定します。bg-shifth アニメーションはテキストの背景を制御し、スイング アニメーションはテキストのスイングを制御します。animation: bg-shift 1s ease-in-out infinite alternate-reverse, swing 2s ease-in-out infinite;2 つの @keyframes ルールを使用して、各フレームのアクションを設定します。二つのアニメーション。
@keyframes bg-shift { from { background-position: 0 50px; } } @keyframes swing { 0% { transform-origin: top; transform: perspective(550px)rotatex(55deg); } 50% { transform: perspective(550px)rotatex(-55deg); } 100% { transform-origin: top; transform: perspective(550px)rotatex(55deg); } }
最後に、最後のエフェクトにはスイング時のハイライトエフェクトがあるので実装しましょう:
h1::before { content: "Hello World !"; position: absolute; background: linear-gradient(transparent 30%, white, transparent 70%); -webkit-background-clip: text; -webkit-text-stroke: 2px red; }アニメーション効果 bg-shift2 を追加して、テキストの揺れに合わせて位置を変更します。
animation: bg-shift2 2s ease-in-out infinite alternate-reverse;@keyframes ルールを使用して、アニメーションの各フレームのアクションを設定します。
@keyframes bg-shift2 { 0% { background-position: 0 50px; } 50% { background-position: 0 -50px; } 100% { background-position: 0 50px; } }完全なコードを以下に示します:
<h1>Hello World !</h1>PHP 中国語 Web サイト プラットフォームには、多くのビデオ教育リソースがあります。誰でも「#」を学ぶことができます。 ##css ビデオ「チュートリアル
以上がCSS を使用して興味深いテキストスイングアニメーション効果を作成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。