ローディングアニメーションは、ページの読み込みの最中にアニメーションを出すことで、待ち時間のストレスが軽減され、イケてるものだとその待ち時間もなんだか楽しいものになります。
以下の記事ではjQueryで記述したアニメーションですが、今回の記事は丸がグルグル回るJavascriptでの簡単なローディングアニメーションです。
関連記事 jQueryのコピペでできるページ切り替え時のローディングアニメーション
この記事は、そんなローディングアニメーションについて、
- ローディングアニメーションのデザインサンプル。
- HTML+CSS+Javascriptのコピペ用コード一式。
- 見た目を変える時の簡単な解説。
の内容です。
カスタマイズも容易で簡単に実装もできるので、気になった方は是非コピペして使ってみてください。
実装後のサンプル
ローディングアニメーションはこのページでも実装されているので、ご覧なる際はページ更新をしてみてください。
ちなみに、アニメーションは以下の動画の挙動になります。
コピペ用のコード一式
HTML+CSS+Javascriptのコード一式です。
HTMLは<body>〜</body>
の中のなるべく頭の方に記述し、Javascriptは <body>〜</body>
のクロージングタグの直前にコピペします。
CSSは外部ファイルなど、好きなところに記述しましょう。
コードを表示する
<div id="js-loader" class="loader"></div>
.loader {
align-items: center;
background: #fff;
bottom: 0;
display: flex;
justify-content: center;
left: 0;
position: fixed;
right: 0;
top: 0;
z-index: 999;
}
.loader::after {
animation: loader 0.5s linear infinite;
border: 1px solid #6bb6ff; /* 丸の色の指定 */
border-radius: 50%;
border-right: 1px solid rgba(200, 228, 255, 0.2); /* 丸のサブ色の指定 */
border-top: 1px solid rgba(200, 228, 255, 0.2); /* 丸のサブ色の指定 */
content: "";
height: 100px; /* 丸のサイズ */
width: 100px; /* 丸のサイズ */
}
@keyframes loader {
0% {
transform: rotate(0);
}
100% {
transform: rotate(360deg);
}
}
const loader = document.getElementById('js-loader');
window.addEventListener('load', () => {
const ms = 400;
loader.style.transition = 'opacity ' + ms + 'ms';
const loaderOpacity = function(){
loader.style.opacity = 0;
}
const loaderDisplay = function(){
loader.style.display = "none";
}
setTimeout(loaderOpacity, 1000);
setTimeout(loaderDisplay, 1000 + ms);
});
ローディング時の丸の色を変更したい時
CSSの .loader::after
の中にある以下の border
関連で、ローディング時の丸の色の指定を行います。
なので、この3つの箇所を好みの色に変更して活用ください。
border: 1px solid #6bb6ff; /* 丸の色の指定 */
border-right: 1px solid rgba(200, 228, 255, 0.2); /* 丸のサブ色の指定 */
border-top: 1px solid rgba(200, 228, 255, 0.2); /* 丸のサブ色の指定 */
ローディング時の丸のサイズを変えたい時
丸のサイズを変更したい時、これも同じくCSSの .loader::after
の中にあるwidth
と height
のサイズを変更します。
その時、同じpx数値にすると綺麗な丸の形になります。
height: 100px; /* 丸のサイズ */
width: 100px; /* 丸のサイズ */