02.プログレスバーをつくる

プログレスバー

フロントエンド言語(HTML/CSS/JavaScript)のアウトプット練習帳です。第二回は、「円形のプログレスバー」を作ります。

1. プログレスバーの動きを確認する

See the Pen
Progressbar
by design1096 (@design1096)
on CodePen.


まず、「Result」画面の円形プログレスバーの中にある「STOP」ボタンをクリックしてみてください。すると、プログレスバーの動きがストップし、ボタンの文字が「START」に変わります。また、「START」ボタンをクリックすると、止まっていたプログレスバーが再び動くことが確認出来ます。

2. 基本のHTML/CSSと配色

基本のHTML/CSS

まず、円形プログレスバーの基本のHTMLとCSSは、下記の記事を参考に作成しました。

  1. CSSアニメーションで円形プログレスバーを作る方法
  2. 【CSS3】@keyframes と animation 関連のまとめ

分かりやすくまとめられているので、チェックしてみてください。

配色

プログレスバーの配色は「Hello Color」というサイトで見つけたものを使用しています。
Hello Color画面をクリックすると、ランダムで二色の配色パターンが表示されます。自分の好みの配色がきっと見つかると思います。

3. JavaScript(CSSを変更する)

スタイルシート(オブジェクト)を取得する

var sheets = document.styleSheets;
また、今回はスタイルシートが複数存在する場合も想定して、JavaScriptを書いています。スイタイルシートの総数を知るには、下記のように記述します。
var sheetsNumber = document.styleSheets.length;

スタイルシートに規則を追加する

スタイルシートをfor文で回し、該当のクラス名に「insertRule」メソッドを使って、規則を追加しています。
sheets[i].insertRule (‘.circle::before { animation-play-state: paused }’, sheets[i].cssRules.length);
対象のクラス名は「.circle::before」と「.circle::after」で、STOPボタンがクリックされた時は、「animation-play-state: paused」、STARTボタンがクリックされた時は、「animation-play-state: running」、つまり、アニメーションの動きを「止める」と「走らせる」ようにしています。

第二回は「円形プログレスバー」のアウトプットを行いました。


※本記事のアイキャッチ画像は、「Unsplash」を使用しています。

amiko
編集者、デザイナー、宣伝のお仕事などを経験。現在は「デザインライター」として活動中。プログラマーとしてもお仕事をしています。好きなことは、読書、音楽(主にジャズ)、旅行。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください