パタパタ時計flip clockを作ってみた
パタパタ時計をページ内に表示したくて作ってみました。 CSS等で3D表現しようとしたのですが、環境によって表示が重くなる場合があり、思ったよりカクカクした表示になってしまう場合がございました。またプラスチックのざらっとしたテクスチャも入れてみたかったので思い切って画像で対応することにしました。 そこで、下記の様な画像を制作いたしました。 0から9までの数字毎に縦10列の構成になっていて、4コマで動く様に動かして行きます。 列の上から下に1列目が1コマ目、2列目が2コマ目、3列目が3コマ目、4列目が最終的に表示させたい数字になります。150ミリ秒ごとに列を動かして動いている様に見せています。 See the Pen flip clock by yoshiaki nakao ( @woopeer ) on CodePen . html、css、javascriptをうまく連携させて行います。 今回動かしたいパーツは、「時(十の位)」「時(一の位)」「分(十の位)」「分(一の位)」「秒(十の位)」「秒(一の位)」の6パーツになります。それぞれ <div id="hour10"></div><div id="hour1"></div><div id="min10"></div><div id="min1"></div><div id="sec10"></div><div id="sec1"></div>というブロックで構成いたしました。 先ずは、css。予め各パーツの背景に画像を貼り付けておきます(background-image)。 位置(background-position)はJSで設定するので設定を省きます。画像を1コマサイズ 横60px 縦100pxで制作してますが余白が下2px横4pxですのでそれぞれのパーツを 横56px 縦98px で固定しました。秒に関しては時分より少し小さく表示させたかったので、cssで縮小(transform: scale3d)させています。 実際