「自分のWebページを作ってみたい」「でも難しそう…」と思っている方は多いのではないでしょうか。実は、基本的なWebページなら、思っているよりもずっと簡単に作ることができるんです。
Webページ作成が役立つ場面:
- 個人のポートフォリオサイト
- 趣味のブログやギャラリー
- 小さなお店の紹介ページ
- イベントの告知サイト
- 家族の思い出を共有するページ
今回は、HTMLとCSSの基本から、実際にWebページを公開する方法まで、初心者の方にもわかりやすく順番に解説していきます。
Webページの基本構造を理解しよう

HTMLとは?
HTML(エイチティーエムエル)は「HyperText Markup Language」の略で、Webページの骨組みを作る言語です。文章に「ここは見出し」「ここは段落」といった意味付けをする役割があります。
HTMLの基本的な考え方:
- タグで文章を囲んで意味を与える
<h1>大見出し</h1>
のように開始タグと終了タグで囲む- ブラウザがタグの意味を理解して表示する
最も基本的なHTMLの構造:
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>私のはじめてのWebページ</title>
</head>
<body>
<h1>ようこそ私のサイトへ</h1>
<p>これは私の最初のWebページです。</p>
</body>
</html>
CSSとは?
CSS(シーエスエス)は「Cascading Style Sheets」の略で、Webページの見た目を美しくするための言語です。HTMLが「内容」を担当するなら、CSSは「デザイン」を担当します。
CSSでできること:
- 文字の色やサイズを変える
- 背景色や背景画像を設定する
- 要素の配置を調整する
- アニメーション効果を追加する
基本的なCSSの書き方:
h1 {
color: blue;
font-size: 30px;
}
p {
color: gray;
line-height: 1.5;
}
JavaScriptの役割
JavaScript(ジャバスクリプト)は、Webページに動きやインタラクティブな機能を追加する言語です。
JavaScriptでできること:
- ボタンをクリックしたときの処理
- フォームの入力チェック
- 画像のスライドショー
- リアルタイムでの情報更新
最初は HTMLとCSSだけでも十分素敵なWebページが作れますので、慣れてからJavaScriptに挑戦しましょう。
必要なツールの準備
テキストエディター
Webページ作成には、コードを書くためのテキストエディターが必要です。
おすすめの無料エディター:
Visual Studio Code(VS Code):
- Microsoft製の高機能エディター
- 初心者にも使いやすい
- 豊富な拡張機能
- Windows、Mac、Linuxで利用可能
Atom:
- GitHub製のエディター
- カスタマイズ性が高い
- パッケージ機能が充実
Sublime Text:
- 軽量で高速
- シンプルなインターフェース
- 有料版もあるが基本機能は無料
ブラウザ
作成したWebページを確認するためのブラウザも重要です。
開発者におすすめのブラウザ:
- Google Chrome:開発者ツールが充実
- Firefox Developer Edition:Web開発に特化
- Microsoft Edge:最新のWeb標準に対応
開発者ツールの使い方:
- ブラウザでWebページを開く
- 右クリックして「検証」または「要素を調査」を選択
- HTMLやCSSの構造を確認・編集できる
- リアルタイムで変更結果を確認可能
基本的なHTMLタグを覚えよう
文書構造のタグ
基本的な文書構造:
<!DOCTYPE html>
<html lang="ja">
<head>
<!-- ページの設定情報 -->
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ページのタイトル</title>
</head>
<body>
<!-- ページの内容 -->
</body>
</html>
各タグの役割:
<!DOCTYPE html>
:HTML5文書であることを宣言<html>
:HTML文書全体を囲む<head>
:ページの設定情報(ブラウザのタブに表示されない)<body>
:ページの実際の内容(ブラウザに表示される)
見出しと段落のタグ
見出しタグ(h1〜h6):
<h1>最も大きな見出し</h1>
<h2>2番目に大きな見出し</h2>
<h3>3番目の見出し</h3>
<h4>4番目の見出し</h4>
<h5>5番目の見出し</h5>
<h6>最も小さな見出し</h6>
段落タグ:
<p>これは段落です。文章をまとまりごとに分けるときに使います。</p>
<p>別の段落です。段落間には自動的にスペースが入ります。</p>
リンクと画像のタグ
リンクタグ:
<a href="https://www.example.com">他のサイトへのリンク</a>
<a href="about.html">同じサイト内の別ページへのリンク</a>
<a href="mailto:contact@example.com">メールアドレスへのリンク</a>
画像タグ:
<img src="photo.jpg" alt="写真の説明">
<img src="images/logo.png" alt="会社のロゴ">
リストのタグ
順序なしリスト(箇条書き):
<ul>
<li>項目1</li>
<li>項目2</li>
<li>項目3</li>
</ul>
順序ありリスト(番号付き):
<ol>
<li>最初の項目</li>
<li>2番目の項目</li>
<li>3番目の項目</li>
</ol>
CSSでページを美しくデザイン

CSSの基本的な書き方
CSSの基本構文:
セレクター {
プロパティ: 値;
プロパティ: 値;
}
実際の例:
h1 {
color: #333333;
font-size: 28px;
text-align: center;
}
色の指定方法
主な色の指定方法:
/* 色名での指定 */
color: red;
color: blue;
/* 16進数での指定 */
color: #FF0000; /* 赤 */
color: #0000FF; /* 青 */
/* RGB値での指定 */
color: rgb(255, 0, 0); /* 赤 */
color: rgba(255, 0, 0, 0.5); /* 半透明の赤 */
フォントの設定
フォントに関するプロパティ:
body {
font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
font-size: 16px;
line-height: 1.6;
}
h1 {
font-weight: bold;
font-style: normal;
}
レイアウトの基本
マージンとパディング:
.content {
margin: 20px; /* 外側の余白 */
padding: 15px; /* 内側の余白 */
border: 1px solid #ccc;
}
要素の配置:
.container {
width: 80%;
max-width: 1200px;
margin: 0 auto; /* 中央寄せ */
}
.text-center {
text-align: center;
}
実際にWebページを作ってみよう
シンプルな自己紹介ページ
以下は、基本的な自己紹介ページの例です。### ページの構成要素を解説
HTMLの構造:
<header>
:プロフィール写真と名前<div class="content">
:各セクションのコンテンツ<div class="contact">
:連絡先情報
CSSのポイント:
- レスポンシブデザイン:スマートフォンでも見やすい
- グラデーション:美しい背景色
- シャドウ効果:立体感のある表現
- グリッドレイアウト:スキルセクションの整列
カスタマイズのアイデア
内容の変更:
- 自分の情報に書き換える
- スキルや趣味を追加・変更
- 連絡先を実際のものに変更
デザインの調整:
- 色合いを好みに変更
- フォントを変更
- レイアウトを調整
- アニメーション効果を追加
レスポンシブデザインの基本

レスポンシブデザインとは?
レスポンシブデザインとは、デバイス(パソコン、タブレット、スマートフォン)の画面サイズに応じて、レイアウトが自動的に調整されるデザイン手法です。
レスポンシブデザインの重要性:
- スマートフォンからのアクセスが増加
- 検索エンジンの評価向上
- ユーザビリティの改善
- メンテナンスの効率化
メディアクエリの活用
メディアクエリを使うことで、画面サイズに応じて異なるCSSを適用できます。
基本的な書き方:
/* デスクトップ用(基本スタイル) */
.container {
width: 1200px;
margin: 0 auto;
}
/* タブレット用 */
@media (max-width: 768px) {
.container {
width: 100%;
padding: 0 20px;
}
}
/* スマートフォン用 */
@media (max-width: 480px) {
.container {
padding: 0 10px;
}
h1 {
font-size: 1.5em;
}
}
フレキシブルなレイアウト
Flexboxの活用:
.flex-container {
display: flex;
flex-wrap: wrap;
gap: 20px;
}
.flex-item {
flex: 1 1 300px; /* 最小幅300px */
}
CSS Gridの活用:
.grid-container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 20px;
}
Webページの公開方法
無料ホスティングサービス
GitHub Pages:
- GitHubアカウントがあれば無料で利用可能
- 独自ドメインの設定も可能
- 技術的なスキルが必要
Netlify:
- ドラッグ&ドロップで簡単デプロイ
- 自動ビルド機能
- フォーム機能なども利用可能
Vercel:
- 高速なホスティング
- Next.jsなどのフレームワークに最適
- 無料プランあり
ドメインの取得
ドメインとは:
- インターネット上の住所
- 例:example.com、mysite.jp
- 年間数百円から数千円で取得可能
主要なドメイン取得サービス:
- お名前.com
- ムームードメイン
- エックスドメイン
- Google Domains
ファイルのアップロード
FTPクライアントの使用:
- FileZilla(無料)
- WinSCP(Windows用)
- Cyberduck(Mac用)
基本的なアップロード手順:
- ホスティングサービスからFTP情報を取得
- FTPクライアントで接続
- ローカルファイルをサーバーにアップロード
- ブラウザでアクセスして確認
SEO(検索エンジン最適化)の基本
HTMLの最適化
適切なタイトルタグ:
<title>田中太郎 - Webデザイナー・フロントエンドエンジニア</title>
メタディスクリプション:
<meta name="description" content="田中太郎のプロフィールサイト。Webデザインとフロントエンド開発を専門としています。">
見出しタグの適切な使用:
<h1>メインタイトル(1ページに1つ)</h1>
<h2>セクションタイトル</h2>
<h3>サブセクションタイトル</h3>
画像の最適化
alt属性の設定:
<img src="profile.jpg" alt="田中太郎のプロフィール写真">
ファイルサイズの最適化:
- 適切な画像形式の選択(JPEG、PNG、WebP)
- 画像圧縮ツールの使用
- レスポンシブ画像の実装
ページ速度の向上
読み込み速度の改善:
- 画像の最適化
- CSSとJavaScriptの圧縮
- 不要なコードの削除
- CDNの活用
デザインツールとリソース
デザインツール
Adobe製品:
- Photoshop:画像編集
- Illustrator:ベクター画像作成
- XD:UI/UXデザイン
無料ツール:
- GIMP:画像編集
- Canva:デザインテンプレート
- Figma:UI/UXデザイン
無料素材サイト
写真素材:
- Unsplash
- Pixabay
- Pexels
アイコン:
- Font Awesome
- Feather Icons
- Material Icons
フォント:
- Google Fonts
- Adobe Fonts
- Font Squirrel
トラブルシューティング
よくある問題と解決方法
ページが表示されない:
- ファイル名の確認(index.html)
- 文字コードの確認(UTF-8)
- HTMLの構文エラーチェック
デザインが適用されない:
- CSSファイルのパス確認
- ブラウザキャッシュのクリア
- CSS構文の確認
スマートフォンで正しく表示されない:
- viewportの設定確認
- メディアクエリの記述確認
- 実機でのテスト実施
デバッグの方法
ブラウザの開発者ツール:
- F12キーで開く
- Elements:HTML構造の確認
- Console:エラーメッセージの確認
- Network:リソースの読み込み状況
バリデーションツール:
- W3C Markup Validator(HTML)
- W3C CSS Validator(CSS)
- 構文エラーの確認と修正
まとめ:継続的な学習と成長
Webページ作成の基本から公開まで詳しく解説しました。重要なポイントをまとめると:
基本技術の習得:
- HTML:ページの構造と内容
- CSS:デザインとレイアウト
- JavaScript:動的な機能(上級者向け)
制作の流れ:
- 企画・設計:目的と内容の明確化
- コーディング:HTMLとCSSの記述
- テスト:各デバイスでの動作確認
- 公開:ホスティングサービスへのアップロード
重要な考慮事項:
- レスポンシブデザイン対応
- SEO最適化
- アクセシビリティの配慮
- ページ速度の最適化
継続的な改善:
- ユーザーフィードバックの収集
- アクセス解析の活用
- 新技術の学習と導入
- デザインの定期的な見直し
今後の学習方向:
- JavaScript を使った動的機能
- フレームワーク(React、Vue.js等)の学習
- バックエンド技術の理解
- UX/UIデザインの深化
コメント