【レイアウト構成】応用編:ランディングページ/CSSアニメーション
このまま学習を続けて、本当に実務で通用するのか不安な方へ。
そんな方に向けて、実務で “通用する人としない人の違い” をまとめた無料メール講座を用意しました。
さらに、特典PDFとして、『コーディング中級者が案件獲得前にやるべきこと8選』をプレゼント中です。
目次
全体のレイアウト構成
解説!
レイアウト構成は下記の通りです。
- header
- ロゴ、ハンバーガーメニューを囲みます。
- main
- コンテンツのメインエリア全体を囲みます。
- div(#mainvisual)
- メインビジュアルのエリアを囲みます。
- section(#reason)
- Reasonコンテンツのエリアを囲みます。タイトルを含む一つのまとまったコンテンツなのでsectionタグを使います。
- section(#voice)
- Voiceコンテンツのエリアを囲みます。タイトルを含む一つのまとまったコンテンツなのでsectionタグを使います。
- section(#summary)
- Summaryコンテンツのエリアを囲みます。タイトルを含む一つのまとまったコンテンツなのでsectionタグを使います。
- div(#entry)
- 申し込みボタンのエリアを囲みます。
- footer
- コンテンツ下のfooter部分を囲みます。
各パーツのレイアウト構成
header
コーディングのヒント!
- ロゴ
- h1タグで記述します。
- ハンバーガ―メニュー
- ハンバーガ―メニューの3本線を表現するクラスを作成します。
クリック時に表示するメニューはnav、ul、liタグで記述し、初期状態は非表示に設定しておきます。
ハンバーガ―メニューがクリックされた際に、jQueryでメニューのオープン、クローズを切り替えます。
div(#mainvisual)
コーディングのヒント!
- 画像
- CSSアニメーションを使用して3枚の画像をフェードイン、フェードアウトで切り替えます。
フェードイン、フェードアウトは keyframes で opacity を0から1に変化させることで表現し、2枚目以降のアニメーション開始タイミングをずらすことで3枚の画像が時間差で切り替わるように設定します。 - テキストとボタン
- positionを使用して、画像の上に重なるように配置します。
ボタンをホバー時に、少し大きくするのは transform の scale を使用します。
section(#reason)
コーディングのヒント!
エリア全体をsectionタグで囲みます。
- タイトル
- タイトル全体をh2タグで囲みます。
下線は、疑似要素(after)を使用します。
その他のセクションでも使いまわせるように、共通のCSSとして定義しておくと便利です。 - スライド表示
- コンテンツをそれぞれ左と右から keyframes の translateX を使用してスライドさせます。
スライドは、要素が画面下に表示されたタイミングでjQueryのプラグイン「inview.js」を使用して実行します。
section(#voice)
コーディングのヒント!
エリア全体をsectionタグで囲みます。
- タイトル
- タイトルは、「#reason」と同様です。
- ふきだし
- ふきだしの矢印は、疑似要素の border と transparent を使用して作ります。
ふきだしの拡大表示は、keyframes で scale と opacity を変化させることで表現します。
アニメーションの実行タイミングについては、上のスライドと同じく「inview.js」で行います。
section(#summary)
コーディングのヒント!
エリア全体をsectionタグで囲み、背景のドット画像とanimationの設定を行います。
- タイトル
- タイトルは、「#reason」と同様です。
- 背景画像の動き
背景画像の動きは、 keyframes で background-position を変化させることで表現します。
animation で infinite を指定することで、背景画像の動きを無限に繰り返すことができます。※background関連のプロパティの使い方については、下記の記事を参考にしてください。
【CSS】backgroundプロパティの使い方について
div(#entry)
コーディングのヒント!
エリア全体をdivタグで囲みます。
- ボタン
- ホバー時に色を反転させて、赤枠線の白いボタンに変化させます。
ボタンの大きさが変わらないように、ホバー前にも赤枠線を設定しておくのがポイントです。
footer
コーディングのヒント!
フッター全体をfooterタグで囲みます。
- フッターメニュー
- それぞれのメニューをul、liタグで囲み、Flexboxで両端揃えの横並びに配置します。
さらに各メニューの中をul、liタグで記述して、ul、liタグが入れ子になるように設定します。
あなたのコーディング力、実務で通用しますか?
以下のようなお悩みに1つでも当てはまる場合、無料のメール講座をお受け取りください。
- 模写はできるようになってきたけど、実務に通用するか不安
- ポートフォリオに悩んでいる・載せる実績がない
- 案件に挑戦したいけど、自信がなくて一歩踏み出せない
今登録すると、特典PDFとして、『コーディング中級者が案件獲得前にやるべきこと8選』をプレゼント中です。
コーディングを仕事にしていきたい方へ
Codejump Proでは、実際の案件をモデルにした仮想案件で実務レベルのスキルと経験を身につけていきます。
- ポートフォリオに載せる実績がない・・・
- 実務経験がゼロ・・・
- 案件獲得に不安がある・・・
1つでも当てはまる場合は、今すぐ実務レベルの案件をスタートしてみてください。
現場レベルのスキルを身につけたい方へ
現場レベルのコーディングスキルを身につけたい方は、書籍『HTML&CSS Webデザイン 現場レベルのコーディング・スキルが身につく実践入門』(出版社:技術評論社)がおすすめです。
本書は、入門編から実践編の6つのWebサイト制作を通して、現場で必要なコーディングスキルをステップアップしながら1冊で身につけていきます。
- 第1章【入門編】プロフィールサイト〜フレックスボックス
- 第2章【初級編】ブランドサイト〜ポジション
- 第3章【中級編】サービスサイト〜複数ページ
- 第4章【上級編】カフェサイト〜複数レイアウト
- 第5章【応用編】ランディングページ〜動きのあるWebサイト
- 第6章【実践編】コーポレートサイト〜実務を想定したWebサイト制作
現場レベルのコーディングスキルを身につけたい方は、こちらの書籍を一通り学習した後、Codejumpの練習課題に取り組むと効率良く学習できます。








