• WebCamp_インタビュー
    【卒業生インタビュー】台湾で月間100万UUの訪日旅行メディアを手掛けるCEOが、プログラミングを学んで得たものとは?
    2018.01.15
  • WebCampPro_インタビュー
    自分で稼ぐ力をつけるため、新卒5年目の営業マンがエンジニアに転職!【WebCampPro転職者インタビュー】
    2018.02.02
  • WebCamp_インタビュー
    「自信の持てるスキルを得たい!」内定辞退した女子大生がプログラミングを学習したワケ。
    2018.04.28
  • WebCampPro_インタビュー
    未経験でも寿司職人からWebデザイナーになった!ホスピタリティでスクールを支える宮脇トレーナー
    2017.05.26
  • WebCamp_インタビュー
    時間や場所にとらわれず自由に働くために必要なスキルとは?【WebCamp卒業生インタビュー】
    2018.01.26
  • WebCampPro_インタビュー
    未経験から上京し、エンジニアとしてチームラボグループに転職!【WebCampPro卒業生インタビュー】
    2018.03.10
  • WebCampPro_インタビュー
    未経験31歳からエンジニア転職を実現【実際に聞いてみた】
    2017.04.01
  • WebCamp_インタビュー
    「1カ月頑張ればこの先が見えてくる」地元メディアを立ち上げたママさん
    2017.07.20
  • WebCamp_インタビュー
    【WebCamp卒業生インタビュー】1ヶ月でRubyをゼロから学び、Webエンジニアとして転職!
    2018.01.15
  • WebCamp_インタビュー
    【WebCamp受講生インタビュー】起業準備中にCEOが気がついたプログラミングスキルの重要性とは?
    2017.12.25
  • WebCamp_インタビュー
    “未経験”でもたった1ヶ月で営業からエンジニアとして転職!『WebCamp』受講者インタビュー
    2017.10.04

◆当サイトで人気のプログラミング教室のおすすめランキングはこちら!
プログラミングは独学では非効率で、時間を無駄にするリスクがあります。効率的なカリキュラムで学べるスクールを受講しましょう。

WEBCAMP【マンツーマンサポート】1ヶ月短期集中でプログラミングを学ぶスクール
1ヶ月通い放題・メンター常駐の教室環境でプログラミングを学びたい方!
TechAcademyオンラインで開講しているプログラミングスクール
オンラインでどこでも学べる!/教室に行くのが忙しい人でも安心!
Tech Camp教養としてのITスキルを学べるスクール
Webデザイン/AI(人工知能)/IOS/Androidアプリ制作/VRを学びたい方!
WEBCAMP PRO転職保証付き!エンジニアとして転職したい人におすすめ!
未経験からプロのエンジニアへ3ヶ月で転職する為のスクールです!
12月生募集中!当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のWebCamp Proコース。
11月生は満員となっております。12月生募集に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

みなさんはCSSの学習をしていませんか?

CSSを学習する時に「アニメーション」が使えると、動きのあるサイトを作成することができます。

今回の記事ではアニメーションの使い方を解説します!

CSS アニメーションとは

CSSのanimation プロパティと @keyframes を使うと、CSSだけでアニメーションの設定ができます。

CSSのみで比較的簡単にアニメーションを実装できるのでおすすめです。

以下に機能の内容をご紹介していきます。

アニメーションとは動きを付ける、変化させるということ

アニメーションとなるとそのまま動画のイメージが一般的かと思いますが、CSSでのアニメーションとは、動作または状態変化という意味になります。

Keyframeとは

@keyframes は、アニメーション開始から終了するまでどのようなアニメーションをするのか指定するものです。

@keyframes は、以下のように記述します。


@keyframes 名称 {
0% {
CSSプロパティ:値;
}
100% {
CSSプロパティ:値;
}
}

名称は任意です。使用する際に直感的にわかりやすい名前をお勧めします。

0% はアニメーション開始時を表しており、100% はアニメーション終了時を表しています。その波括弧の中にCSSプロパティを記述して、アニメーションを指定します。

keyframeの開始と終了の指定

0% と 100% の記述は必須ではありません。アニメーションの開始から終了までの経過を 0% から 100% で指定できます。

また、アニメーション開始時を 0% 、アニメーション終了時を 100% と記述していましたが、from と to と記述することもできます。

from は 0% を表し、to は 100% を表します。

animationとは

@keyframes で指定したアニメーションは、あくまでアニメーションそのものの定義であって、なにかに適用するためにはanimation プロパティで指定します。

animation プロパティでは、どのアニメーションを適用するのか、適用したアニメーションはいつ開始されるのか、開始されてから終了するまでの時間、アニメーションの繰り返し回数などを指定することができます。

2つに分かれている意味

@keyframes ではアニメーションのみを指定し、animation プロパティで適用するアニメーションやアニメーションの時間などを指定します。

なぜ1つに統合しないのかというと、例えばアニメーションの動作は一緒でも、フェードイン、フェードアウトなどのアニメーションでその時間だけを場面により変えたい場合にkeyframeはそのままでanimationプロパティを複数用意するだけでよくなります。

動作定義と適用対象及び適用時間は分けてあった方が何かと便利です。

animation プロパティの種類

animation-name

アニメーションの名前、つまり使用するkeyframeの名前を指定します。

animation-duration

アニメーションが始まって終わるまでの時間を指定します。時間を指定する単位は 秒数(s) または ミリ秒数(ms) になります。

animation-timing-function

アニメーションの進行の度合いを指定します。進行度合いとは、アニメーション開始時から終了時までの変化速度を一定にしたり不定期にしたりということです。

指定できる値は、

ease(緩やかに一定)
ease-in(緩やか => 早く)
ease-out(早く => 緩やか)
ease-in-out(かなり緩やか)
linear(一定)

などがあります。

任意で変化の度合いを指定するときは、cubic-bezier で指定します。

animation-delay

アニメーションが始まる時間を指定します。時間を指定する単位は 秒数(s) または ミリ秒数(ms) になります。

animation-iteration-count

アニメーションの繰り返し回数を指定します。アニメーションを無限に繰り返したい場合は、値に infinite を指定します。

animation-direction

アニメーションの再生方向を指定します。

normal

毎回、指定した通り(順方向)のアニメーションが再生されます。

reverse

毎回、逆方向からのアニメーションが再生されます。

alternate

順方向、逆方向のアニメーションを交互に繰り返します。

alternate-reverse

逆方向、順方向のアニメーションを交互に繰り返します。

animation-fill-mode

アニメーションの開始前、終了後のスタイルを指定します。

none

アニメーションで指定したスタイルは、アニメーションの開始前、終了後には適用されません。

forwards

アニメーション終了時のスタイルがアニメーション終了後にも適用されます。

backwards

アニメーション開始時のスタイルがアニメーション開始前にも適用されます。

both

forward と backwards の両方が適用されます。

animation-play-state

アニメーションの再生・停止を指定します。

running

アニメーションが実行されます。

paused

アニメーションが停止されます。

animation

上記、8つのプロパティを一括で指定できます。

ただし、animation-duration と animation-delay の2つのプロパティは両方とも秒数で指定するため、最初に記述した秒数が animation-duration で、次に記述した秒数が animation-delay と解釈されます。

サンプル


<!DOCTYPE html>
<html>
<head>
<title>line-height</title>
<style type="text/css">
@keyframes fadeIn {
from {
opacity:0;
}
to {
opacity:1;
}
}
@keyframes fadeOut {
from {
opacity:1;
}
to {
opacity:0;
}
}

.abc {
width: 50px;
height: 50px;
background: #ef0000;
animation: fadeIn 3s, fadeOut 3s 5s forwards;
}</style>
</head>
<body>
<div class="abc"></div>
</body>
</html>

まとめ

初心者の方向けにfloatを紹介していきましたが、いかがでしたか?

floatを上手に使いこなせることはWebサイトを作成する上で基本となる部分ですので、しっかり基本を抑えてくださいね!

1ヶ月でHTML・CSSができる!「WebCamp」とは?

WebCampは1ヶ月でプログラミング・Webデザインスキルを学ぶ通い放題のプログラミングスクールです。

参加する方の90%は未経験者です!

短期集中型のスクールなので、期間を決めて圧倒的に効率よくサイト制作スキルを身に着けたい方におすすめです!

わからないことを講師にすぐ質問できたり、通い放題で自分のスケジュールに合わせて来校することができるので、独学で学習するよりも早く確実にスキルが身につきます。

学習の疑問点やWebスキルのマスターの仕方がわかる無料説明会も開催しています。ぜひお気軽にお申込みください!

12月枠も残りわずか当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のWebCamp Proコース。
11月受入枠は満員となっております。12月枠に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

▼未経験から1ヶ月でWebデザイン・プログラミングを学びたい方はこちら!

▼ついに開講!オンラインでWebデザインを学びたい方はこちら!

関連キーワード
学習の関連記事
  • 【誰でもわかる!】エンジニアの仕事内容を徹底解説
  • 初心者でも一瞬でわかるプログラミングの考え方・思考法
  • エンジニア必見!エンジニアが成長できるブログ紹介
  • エンジニアとは?仕事内容、年収、将来性を徹底解説
  • 【Rails入門説明書】find、find_byについて解説
  • プログラミング未経験者でも出来る開発環境構築
おすすめの記事