実際のサンプルでアニメーション解説 [ホームセキュリティ編]【CSS/JS】

  • このエントリーをはてなブックマークに追加


WEBサイト作成時にこのアニメーションがよくわからない…ということがあると思います。
今回は弊社で作成した、ホームセキュリティサイトのサンプルを使用しながら解説していきます。
初心者向けの記事です。

参考にするサンプルサイトはこちらから

サンプルサイト

inview.jsを読み込ませる

今回は場所によっては『inview.js』というライブラリを読み込ませて、使用しています。
これを使うとスクロールをして表示領域に入った時にイベントを発生させることができます。


一緒にjqueryの読み込みもさせてください。
CDNも配布されていますが、3x系のjqueryで動作しないので、使用しているものによってはDLして使用するのが無難です。

あとは読み込ませたすぐ下にこのように記述しておきます。
記述の内容としては、まず『inview』というclassをトリガーにします。
このトリガーが視界に入ったら『is-show』というclassを付与します。これが付与されることでアニメーションイベントを発生させることができます。


おそらく表示するタイミングを調整したいことも多いと思うので、領域内に表示したらクラスを付与する系のjsなどであればinview.jsでなくてもご都合のよいものに差し替えてOKです。

では一つひとつ解説していきましょう。

各要素をフェードインして表示させる


このように各要素をフェードインして表示させる方法のご紹介です。

HTML



CSS



根本的な要素の装飾は今回は省略して、アニメーションについてのみ解説します。
まずはli一つひとつに対して.inview をつけましょう。
上記で説明した通り、inviewのトリガーになります。

そして今回登場したした.fadeInUp
ここでふわっと下から上に表示させるアニメーションの設定を行っています。
.is-show が付与されたらキーフレームで設定したアニメーションさせる、という感じになっています。
以降でも使用するので、共通で使えるようにしておくと便利です。

リストの2個目以降に付与されているtd1 td1_5
こちらはアニメーションの開始のタイミングを最初のものから少しずらしています。
これで一気に表示されることなく、次々と要素が表示されるアニメーションが実現できます。

これで『各要素をフェードインして表示させる』の完成です。


マウスホバーでボタンのグラデーションを動かす

マウスホバーしたときに、背景のグラデーションを動かす方法です。

HTML



CSS


ここではinviewはボタン全体を表示するのに使用しているだけで、ホバー時のアニメーションには使用していません。

アニメーションの仕組みですが、背景のグラデーションのbackground-sizeを最初大きめに取っておいて、background-positionをずらして再現しています。
図解すると以下のような感じです。

矢印のアニメーションやscaleなどはお好みで調整してください。
また、以前のブログでも解説をしているのでそちらもチェックしてみてください。

これで『マウスホバーでボタンのグラデーションを動かす』の完成です。


アコーディオン

次にアコーディオンの要素です。
こちらはJSを使用します。

HTML


CSS


JS



JSで.q-open というclassが付与されれいる要素をクリックすると、そのすぐ隣にある.ans が開くようになっています。

また、.q-openの親要素のliに対して.active が付くようにしています。
これで、CSSの指定でクリックされたら右側にあるプラスのアイコンがマイナス(閉じるボタン)に変化します。そのほか必要に応じてactive 時の装飾もできます。

これで『アコーディオン』の完成です。



ぜひ参考にしていろいろ試してみてください!

サンプルサイト

弊社のLP制作について


執筆者:工藤[ WEBデザイナー ]

WEBデザイナー。 最近はWordPressを触るのが好きです。よろしくお願いします。

関連記事

プログラミング

【PHP】PHPでExcelファイルを操作するお話 その2

目次1 前回は・・・2 考え方3 保存したフォーマットにデータを入れる4 ExcelからPDFへ変換する4.1 mpdfで変換する4.2 TCPDFで変換する4.2.1 IPAexフォントのインストール5 結局何がいいの? 前回は・・・ 前回はPHPでExcelファイルを操作する方法をまとめました。 基本的にはCSV出力や一括登録の代替案としてまとめましたが、PhpSpreadsheetを使うことでExcelで作成した書類のフォーマットにPHPでデータを入力してPDFで出力す […]

プログラミング

【PHP】PHPでExcelファイルを操作するお話 その1

目次1 こういうことってないですか?2 インストール方法3 PHPでライブラリの呼び出し方4 Excelファイルのエクスポート方法4.1 ちなみに・・・5 Excelファイルのインポート方法6 これを組み合わせると??? こういうことってないですか? webでの管理システムを設計するときに「CSVでインポートやエクスポート機能を付けてよ」って言われる事があります。 インポートに関しては一括登録や一括削除や更新など割とリスクが大きいのですが、エクスポートはあったりします。 CS […]

スマホアプリ

【Android】スプラッシュスクリーンを設定するお話

スマホアプリを作る上で欠かせない・・・訳ではないですが、アプリの構成に必要なのはスプラッシュスクリーン(以下スプラッシュ画面)ですよね 目次1 そもそもスプラッシュ画面とは?2 Androidアプリで実装する場合(今まで)3 SplashScreen API登場3.1 スプラッシュ画面用のActivityを用意する3.2 themes.xmlにテーマを記述する そもそもスプラッシュ画面とは? スマホアプリにかかわらず、ほとんどのアプリやプログラムを起動した際に一瞬表示される画 […]

株式会社8bit (エイトビット)

東京都目黒区でWebサイト制作、Webシステム開発などを行っております。
コーポレートサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

Web制作に関するご相談はお気軽にどうぞ

弊社に制作をご依頼いただく際の費用感をご確認いただける、
見積りシミュレーションをご用意いたしました。