【より高度なweb制作スキルの習得】デザインとコーディングの実践練習 - Creator Mako's ポートフォリオ - 3時のおやつが食べたい

HTML/CSS / JavaScript / デザイン

【より高度なweb制作スキルの習得】デザインとコーディングの実践練習

アイキャッチ画像

この記事を読むのに必要な時間は約 12 分です。

 

本記事では、デザインとコーディングの応用学習の方法についてまとめました。

 

学習工程マップ④

 

応用学習(デザインとコーディングの実践練習)

 

<学習目的>
より高度なデザイン・コーディング技術を習得する

<学習方法>
インプット:web制作専門講師からの指導と助言/参考サイト
アウトプット:LP(ランディングページ)デザイン作成/より複雑な動きの実装(ハンバーガーメニュー/フェードイン/スライドショーなど)

 

 

私のデザイン・コーディングの応用に関する学習工程を大きく分けると、次のようになります。

 

 

2023年

<5月下旬>
複雑な形のハンバーガーメニュー実装

 

<6月上旬>
一部オリジナルデザインの動きのあるサイト模写開始/LP(ランディングページ)画像のデザイン学習・作成開始

 

<6月中旬>
LP(ランディングページ)のコーディング開始

 

<6月下旬>
画像やテキストのフェードイン実装/画像遅延読み込み「lazysizes」実装/動画挿入

 

<7月上旬>
別商品のLPデザイン作成開始

 

<7月中旬>
「slick」を用いたスライドショー実装

 

<8月下旬>
「続きを読む・もっと見る」ドロップダウン機能の実装

 

<9月下旬>
LP申し込みフォーム作成(入力内容エラーチェック)/選択肢によって表示内容が変わるプルダウン実装

 

 

学習方法は以下の通りです。

 

 

<5月下旬>
複雑な形のハンバーガーメニュー実装

 

5月下旬には、複雑な形のハンバーガーメニューの実装を行いました。

具体的には、下のような形のハンバーガーメニューを実装しました。

 

複雑なハンバーガーメニュー実装結果画像

 

実装コード

 

複雑な形のハンバーガーメニュー実装コードhtml画像

複雑な形のハンバーガーメニュー実装コードcssパソコン幅画像

 

複雑な形のハンバーガーメニュー実装コードcssスマホ幅画像

複雑な形のハンバーガーメニュー実装コードjs画像

 

参考:複雑な形のハンバーガーメニュー実装コード

 

 

 

<感想>

参考サイトの実装コードを、私のハンバーガーメニュー実装コードとどのように組み合わせたら理想の形に持っていけるのか考えるのに苦戦しました。

 

 

 

<6月上旬>
一部オリジナルデザインの動きのあるサイト模写とLP(ランディングページ)デザイン学習・画像作成開始

 

6月上旬から行ったことは以下の通りです。

 

  • 一部オリジナルデザインの動きのあるサイト模写開始
  • LP(ランディングページ)画像作成開始

 

 

一部オリジナルデザインの動きのあるサイト模写開始

 

基本的に、サイト内の構造やコンテンツ内容は参考サイトと同じような作りにしましたが、オリジナルデザインを考える練習として、デザイン面に関しては一部オリジナル要素(背景をグラデーションにするなど)を足して制作していきました。

 

例:トップページ

 

 

トップグラデ透過画像

 

また、今回からサイト内に動きの要素を多く取り入れるようにしました(6月下旬から動きの実装開始)。

 

参考:模写サイト

 

 

 

LP(ランディングページ)画像作成開始

 

実際のLPやPinterestなどで、LPに使われている画像がどのようなデザインで作られているのか学習し、それらを参考にphotoshop CCでLP画像を作成していきました。

 

pinterestで集めたLP参考画像

 

 

 

LPトップ比較画像

 

専門講師の方から「LP画像内の人物はターゲットと同じ人種・性別・年齢層にした方がよい(今回であれば日本人・女性・20~30代)」、「一番伝えたい情報(アイキャッチ部分)をどういう配置にするのが適切なのか」、「LP画像内の余白はなるべく無くした方がよい」などの助言をいただいたので、その点を意識して修正しました。

 

参考:LPデザイン

 

 

 

<感想>

LP画像作成の際もバナー作成の時と同じく気を付けなければならない点が多々あり、それらの点について今回も専門講師の方に色々教えていただけてとても勉強になりました。

 

 

 

<6月中旬>
LP(ランディングページ)のコーディング開始

 

6月中旬からは、photoshop CCでLP画像を作成していきつつ、すでに出来上がったLP画像を用いてLPの作成を開始しました。

主に行ったことは以下の通りです。

 

  • 作成済みLP画像を用いてLPのコーディング開始
  • 動く購入ボタンの作成と実装

 

 

作成済みLP画像を用いてLPのコーディング開始

 

以下のようなコードを記述し、LPのコーディングを進めていきました。

 

LPコーディングHTML画像

LPコーディングCSS画像

 

 

 

動く購入ボタンの作成と実装

 

購入ボタン画像を参考サイトをもとにphotoshop CCで作成し、ゆっくりと拡大・縮小を繰り返す動きの実装を行いました。

 

LPボタンアニメーション

 

 

 

購入ボタン拡大縮小実装コードhtml画像

購入ボタン拡大縮小実装コードcss画像

 

上記のコードにより、購入ボタンが拡大・縮小を繰り返すようになります。

 

参考:拡大縮小を繰り返す購入ボタンのデザイン

参考:拡大縮小を繰り返す購入ボタンの実装方法

 

 

 

<感想>

LPは主に画像で構成されているため画像を制作するのは大変ですが、その分HTMLやCSSなどのコードをあまり書く必要がなかったのが新鮮でした。

 

 

 

<6月下旬>
フェードインと画像遅延読み込み「lazysizes」実装/動画挿入

 

6月下旬から行ったことは以下の通りです。

 

  • 画像やテキストのフェードイン実装
  • 画像遅延読み込み「lazysizes」実装
  • LP内に好きな形に切り抜いて動画挿入

 

 

画像やテキストのフェードイン実装

 

以下のコードにより、画像やテキストのフェードインが可能です。

 

フェードイン実装コードhtml画像

フェードイン実装コードcss画像

フェードイン実装コードjs画像

 

 

フェードイン用画像

 

 

 

画像遅延読み込み「lazysizes」実装

 

「lazysizes」は画像などを遅延読み込みするための「JavaScript製プラグイン」です。

通常、Webサイトを表示する際、画面の表示領域外を含めたすべての画像を一気に読み込むため、Webサイトに画像を多く使用している場合はその分読み込み処理に負担がかかり、結果としてWebサイトの表示速度が遅くなってしまいます。

 

なので、このことから起こり得る問題として

  • ユーザーの離脱
  • クローラー対策

などが考えられます。

 

「lazysizes」を実装することにより、画面の表示領域に入った画像だけを読み込むようになるので、Webサイトに画像を多く使用している場合であっても表示速度が遅くなるのを防ぐことができ、その結果、ユーザーの離脱やSEO対策(クローラー対策)として検索順位への影響を回避することができます(当サイトにも実装済み)

 

 

以下のコードで実装が可能です。

 

lazysizes実装コード画像

 

 

lazysizes読み込み確認画面画像before

lazysizes読み込み確認画面画像after

 

参考:「lazysizes」実装方法1

参考:「lazysizes」実装方法2

 

 

 

LP内に好きな形に切り抜いて動画挿入

 

下記のコードで動画を好きな形に切り抜いて挿入することができます(使用動画ファイルはmp4形式です)。

 

例:丸い形に動画を切り抜いて挿入する

 

動画挿入コードhtml画像

動画挿入コードcss画像

 

動画挿入実装結果画像

 

参考:HTMLに動画埋め込みする方法

参考:CSSでvideoタグを切り抜いて好きな形に表示する方法

 

 

 

<感想>

画像遅延読み込みに関しては専門講師の方から詳しく教えて頂きました。

UX・SEOの点で重要となるページ表示速度の改善方法について知ることができてよかったです。

 

 

 

<7月上旬>
別商品のLPデザイン作成開始

 

7月上旬からは、別商品のLP画像をphotoshop CCで作成していきつつ、出来上がったLP画像からLPのコーディングを行っていきました。

 

別商品LPトップ比較画像

 

専門講師の方から「小さい画面表示にしても、左上のアイキャッチ部分が目立つようにさせた方がよい」との助言をいただいたので、その点を意識して修正しました。

 

参考:LPデザイン

 

 

 

<感想>

LP全体のベースは6月から作り始めたLPとほぼ同じで、オリジナルデザイン要素は少し足しただけだったのですが、色などを少し変えただけでも全体の雰囲気としてはものすごく変わるんだなと思いました。

 

 

 

<7月中旬>
「slick」を用いたスライドショー実装

 

7月中旬には、スライダープラグイン「slick」を用いたフェードインで切り替わるスライドショーの実装を行いました。

以下のコードで実装が可能です。

 

フェードインで切り替わるスライドショー実装コードhtml画像

フェードインで切り替わるスライドショー実装コードjs画像

 

 

  • スライドショー用画像1
  • スライドショー用画像2
  • スライドショー用画像3

 

参考:「slick」を用いたスライドショー実装方法

 

 

 

<感想>

今回の学習前までは、スライドショーの実装にはきっとたくさんのややこしいコードを書かないといけないんだろうなと思っていたのですが、「slick」を使用すれば分かりやすいシンプルなコードで実装が可能なのでとても楽でした。

 

 

 

<8月下旬>
「続きを読む・もっとみる」ドロップダウン機能の実装

 

8月下旬には、「続きを読む・もっとみる」ドロップダウン機能の実装を行いました。

具体的には、下のような形のドロップダウンを実装しました。

 

「もっとみる」ボタンを押すと

 

多階層ドロップダウンメニュー実装結果画像bt押す前

 

続きのコンテンツ内容が表示される

 

多階層ドロップダウンメニュー実装結果画像bt押した後

 

 

以下のコードで実装が可能です。

 

多階層ドロップダウンメニュー実装コードhtml画像

多階層ドロップダウンメニュー実装コードcss画像

多階層ドロップダウンメニュー実装コードjs画像

 

参考:「続きを読む・もっとみる」ドロップダウン機能実装方法

 

 

 

<感想>

このような形のドロップダウンはいろんなホームページ内でよく使用されているのを見かけていたので、今回実装できるようになれてよかったです。

 

 

 

<9月下旬>
LP申し込みフォーム作成(入力内容エラーチェック)と選択肢によって表示内容が変わるプルダウン実装

 

9月下旬から行ったことは以下の通りです。

 

  • LP申し込みフォーム作成(入力内容エラーチェック)
  • 選択肢によって表示内容が変わるプルダウン実装

 

 

LP申し込みフォーム作成(入力内容エラーチェック)

 

LPの申し込みフォーム作成と同時に入力内容エラーチェックの実装も行っていきました。

入力内容エラーチェックでは、required属性を使ってHTMLだけで入力フォームに必須項目を作り、pattern属性などで入力可能文字の制限を行いました。

 

実装コードは以下の通りです。

 

例:パスワード入力欄

 

入力内容エラーチェック実装コード画像

 

上記のコードにより、フォーム内に必要な情報が入力されていないとエラーが表示されるようになりました。

 

空欄のまま送信すると入力必須を知らせるエラーメッセージ

 

申し込みフォーム入力必須エラー画像

 

必要な文字数に達していないと以下のエラーメッセージ

 

申し込みフォーム文字数エラー画像

 

参考:生年月日入力フォームの作り方

参考:required属性を使って入力フォームに必須項目を作る方法

参考:パスワード入力欄作成と入力文字の制限方法

参考:pattern属性で電話番号・郵便番号・フリガナ・空白などを判別する方法

 

 

 

選択肢によって表示内容が変わるプルダウン実装

 

LPの申し込みフォーム内に以下のようなプルダウンを実装しました。

 

セレクトメニューの選択肢によって下に表示される内容が切り替わる

 

プルダウン選択肢切替前画像

プルダウン選択肢切替後画像

 

以下のコードで実装が可能です。

 

選択肢によって表示内容が変わるプルダウン実装コードhtml画像

選択肢によって表示内容が変わるプルダウン実装コードjs画像

 

参考:選択肢によって表示内容が変わるプルダウン実装方法

 

 

 

<感想>

申し込みフォームの入力内容エラーチェックに関して、設定をどこまで細かく行うべきなのか悩みました。

 

 

 

まとめ

今回は、デザインとコーディングの応用学習の方法についてまとめてみました。

この学習期間中にそれまでと比べて、より複雑なデザイン・コーディングができるようになったので、作れるホームページの幅が広がりました。

最後まで読んでいただき、ありがとうございました。

 

 

 

この記事の執筆者

執筆者画像

Webデザイナー/音楽クリエイター
Mako

未経験からWebデザイナーになりました。
簡単なWebサイトの制作やLPなどのデザイン作成、WordPressの自作テーマ化ができます。
当ブログでは、未経験からWebデザイナーを目指すために行ってきた学習方法や、ポートフォリオサイトの作り方などについて執筆していきます。

また、映像向けBGM販売サービス「Audiostock」の音楽クリエイターとしても、のんびり活動中です。

トップへ戻るボタン画像