CSSでアニメーション読み込みテキストを作成する
これは、もともと公開されたcodinhood.com
ロードアニメーションは、ユーザーが完了するためにいくつかのアクションを待っているときに視覚的なフィードバックを与えるための素晴らしい方法です.このチュートリアルでは、ロードアニメーションとして動作するように、波のようにテキストを上下にアニメーション化する方法を学びます.
我々がグループとしてテキストをアニメーション化しているならば、我々は1つの要素ですべての手紙を置くことができました.しかし、このアニメーションは、各文字が個別にアニメーション化する必要がありますので、我々は独自の要素に各文字を分離する必要があります.
The
波アニメーションを作成するには、文字を1つずつ後、または連続してアニメーション化する必要があります.私たちは増加している
別の遅延の増加、または別のを試して遊んでみてください
ロードアニメーションは、ユーザーが完了するためにいくつかのアクションを待っているときに視覚的なフィードバックを与えるための素晴らしい方法です.このチュートリアルでは、ロードアニメーションとして動作するように、波のようにテキストを上下にアニメーション化する方法を学びます.
HTMLとCSSのセットアップ
我々がグループとしてテキストをアニメーション化しているならば、我々は1つの要素ですべての手紙を置くことができました.しかし、このアニメーションは、各文字が個別にアニメーション化する必要がありますので、我々は独自の要素に各文字を分離する必要があります.
<div class="container">
<div class="loading">
<div class="loading__letter">L</div>
<div class="loading__letter">o</div>
<div class="loading__letter">a</div>
<div class="loading__letter">d</div>
<div class="loading__letter">i</div>
<div class="loading__letter">n</div>
<div class="loading__letter">g</div>
<div class="loading__letter">.</div>
<div class="loading__letter">.</div>
<div class="loading__letter">.</div>
</div>
</div>
The container
クラスはページ上のテキストを中心にし、背景色を定義します.The loading
クラス使用flex-direct: row
強いるloading_letter
行としてレンダリングする要素..container {
height: 100vh;
background: #773d8c;
display: flex;
justify-content: center;
align-items: center;
}
.loading {
display: flex;
flex-direction: row;
}
最後に、テキストの基本的なスタイルを定義します.フォントAudiowideはから供給することができますGoogle Fonts .@import url(https://fonts.googleapis.com/css?family=Audiowide);
.loading__letter {
font-size: 88px;
font-weight: normal;
letter-spacing: 4px;
text-transform: uppercase;
font-family: "Audiowide";
color: #fec468;
}
テキストアニメーション
The
@keyframe
アニメーションはtranslateY
関数を変換する各文字を移動する40
ピクセルをしてから0
ピクセル.我々は、アニメーションのピークを定義することができます50%
, またはアニメーションを通して半減するが、少し前にピークを定義する40%
) そして、少し前にアニメーションを仕上げます80%
) 各反復の間に小さな休止があることを意味します.@keyframes bounce {
0% {
transform: translateY(0px);
}
40% {
transform: translateY(-40px);
}
80%,
100% {
transform: translateY(0px);
}
}
更新.loading_letter
クラスでanimation-name
バウンスするanimation-duration
設定する2s
, とanimation-iteration-count
to infinite
..loading__letter {
font-size: 88px;
font-weight: normal;
letter-spacing: 4px;
text-transform: uppercase;
animation-name: bounce;
animation-duration: 2s;
animation-iteration-count: infinite;
}
我々は正確な同じタイミングで、各文字に正確な同じアニメーションを追加しているので、文字はグループとしてアニメーション化されます:波アニメーションを作成するには、文字を1つずつ後、または連続してアニメーション化する必要があります.私たちは増加している
animation-delay
等しい増加の各々の手紙のために.最初の文字がすぐに開始され、2番目の文字が遅延されます0.1
秒、3番目の文字0.2
秒など.最後に、CSSの各文字をnth-child(num)
位置を渡すことによる擬似クラス..loading__letter:nth-child(2) {
animation-delay: 0.1s;
}
.loading__letter:nth-child(3) {
animation-delay: 0.2s;
}
.loading__letter:nth-child(4) {
animation-delay: 0.3s;
}
.loading__letter:nth-child(5) {
animation-delay: 0.4s;
}
.loading__letter:nth-child(6) {
animation-delay: 0.5s;
}
.loading__letter:nth-child(7) {
animation-delay: 0.6s;
}
.loading__letter:nth-child(8) {
animation-delay: 0.8s;
}
.loading__letter:nth-child(9) {
animation-delay: 1s;
}
.loading__letter:nth-child(10) {
animation-delay: 1.2s;
}
別の遅延の増加、または別のを試して遊んでみてください
animation-timing-function
ライクease-in-out
とどのようにアニメーションに影響を参照してください.Reference
この問題について(CSSでアニメーション読み込みテキストを作成する), 我々は、より多くの情報をここで見つけました https://dev.to/codypearce/create-animated-loading-text-with-css-4n3pテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol