STEP 1 / 10

HTMLのきほん📄

HTMLは、Webページの「骨組み」を作る言語だよ。見出しはどこ、文章はどこ、画像はどこ……というのを、タグを使ってブラウザに伝えていくよ。

🐣 STEP 1のゴール

今日は「文字が表示された!」まででOK

このページをぜんぶ覚えなくてもだいじょうぶ。まずはコードの文字を1つ変えて、右の画面も変わることを確かめよう。

できあがりの目印 じぶんの好きなことばを、右の白い画面に表示できたらクリア!
このページで出てくるものを見る
  1. 文字を表示する
  2. タグで「見出し」「文章」などの役割をつける
  3. リンク、画像、リストを置く
  4. ページの大きなまとまりを作る
  5. 入力できる場所を作る
最初の5分:文字を変えてみよう

左のコードにある「こんにちは」を、好きなあいさつに変えてみてね。

右の画面が変わった? それだけで、もうHTMLを1行書けたよ!

🏠 HTMLってなに?

HTML(HyperText Markup Language)は、家づくりでいう「柱」や「骨組み」にあたる部分。この上にCSSで壁紙や家具(見た目)を、JavaScriptで動く仕掛け(動き)を足していくよ。まずはこの骨組みの作り方から覚えよう。

HTMLは「タグ」で文章を囲んで、その部分の役割を伝える。

<p>これは段落だよ</p>

<p>を「開始タグ」、</p>を「終了タグ」と呼ぶよ。この2つで文章をはさんだかたまりを「要素(element)」と呼ぶよ。

タグの中に href="..." みたいに追加情報を書くことがあるよ。これを「属性(attribute)」と呼ぶよ。後で出てくる<a href="URL">hrefがそれだよ。
ページ全体の骨組み

HTMLファイルには、お決まりの書き出しがあるよ。丸ごと覚えなくてOK。今は<body>の中が画面に出る、とわかれば十分!

<!doctype html>
<html lang="ja">
  <head>
    <meta charset="UTF-8" />
    <title>ページのタイトル</title>
  </head>
  <body>
    <p>ここに表示したい内容を書く</p>
  </body>
</html>
  • <!doctype html> … 「このファイルはHTML5で書いてるよ」という宣言。おまじないとして最初に1回だけ書く。
  • <html lang="ja"> … ページ全体を囲むタグ。lang="ja"で「日本語のページだよ」とブラウザや検索エンジンに伝える。
  • <head> … 画面には直接表示されない、ページの設定を書く場所。文字コードやタイトルなど。
  • <meta charset="UTF-8" /> … 文字コードの指定。これを忘れると日本語が文字化けすることがあるよ。
  • <body> … 実際に画面に表示される中身を書く場所。ここから下がメインコンテンツ。
よく使うタグ

ここからは1つずつ練習するよ。いちばん上だけ開いてあるので、できたら次へ進んでね。

1見出しをつける<h1><h6>

見出しは、本やノートのタイトルと同じ。<h1>がいちばん大きな見出しで、数字が増えると小さな見出しになるよ。

2文章を書く<p>

ふつうの文章は<p>ではさむよ。文章が2つなら、<p>も2組に分けよう。

3リンクを置く<a>

別のページへ移動できる文字がリンク。hrefの中に行き先を、タグのあいだに画面へ出す文字を書くよ。

4画像を置く<img>

srcに画像の場所を書くと、その画像が出てくるよ。altには、画像が見えないときにも伝わる説明を書くよ。

<img>には、うしろの</img>を書かないよ。まずは、このタグだけ形がちがうと覚えておけばOK!
5箇条書きを作る<ul><li>

<ul>がリスト全体の箱で、<li>が1個ぶんの項目。項目を増やすときは、<li>...</li>を丸ごとコピーするよ。

6番号つきリストを作る<ol><li>

順番が大事なときは<ol>を使うよ。ブラウザが1、2、3の番号を自動でつけてくれる。

7ボタンを置く<button>

押せるものを置くときは<button>。今は置くだけでOK。押したときの動きはJavaScriptのページで作るよ。

作りたいものから、HTMLのタグを探す
タグ役割
<h1>〜<h6>見出し
<p>ふつうの文章
<a href="...">リンク
<img src="..." alt="...">画像
<ul> / <li>箇条書き
<ol> / <li>番号つきリスト
<button>ボタン
タグの中に、タグを入れる

まとめへ進む前に、コードが右へずれている理由を知っておこう。

<ul>の要素の中に、<li>の要素が入っているね。こんなふうに、要素の中へ別の要素を入れることをネストというよ。外側を「親要素」、中にあるものを「子要素」と呼ぶこともあるよ。

<ul> 外側の箱
<li>...</li> 1個目
<li>...</li> 2個目
</ul> 箱はここまで
右へずらすのが「インデント」

中に入っている行の先頭へ、半角スペースを2つ入れるよ。画面の見た目は変わらないけれど、どこからどこまでが箱の中なのか見つけやすくなる。

<ul>
  <li>プリン</li>
  <li>ひなたぼっこ</li>
</ul>
インデントをまちがえても、ページが壊れるわけではないよ。まずは「中にあるものを、少し右へ」だけ覚えればOK!
まとめ:自己紹介を作ろう

1つずつ練習したタグを、こんどは一緒に使ってみよう。まずはリストを1個増やすだけでOK!

セマンティックHTML

HTMLのタグには、それぞれ役割があるよ。そのブロックが何なのか、タグの名前じたいで伝えられるようになっているんだ。

たとえば「ここはナビゲーションだよ」「ここは記事本文だよ」というのをタグの名前で伝えると、ブラウザ・検索エンジン・スクリーンリーダーがページの構造を理解しやすくなる。これを「セマンティック(意味づけされた)HTML」と呼ぶよ。

<header>ページ or セクションの先頭(ロゴやナビなど)
<nav>ナビゲーション(メニュー)のかたまり
<main>そのページの主役となるメインコンテンツ(1ページに1つ)
<section>意味のあるまとまり(見出しとセットで使うことが多い)
<article>それ単体で完結する記事・投稿など
<footer>ページ or セクションの末尾(著作権表示やリンクなど)

このサイト自身も、この構造で作られているよ(ページのソースを見てみてね)。

フォームのきほん

ユーザーが何かを入力する場所を作るタグたち。

  • <form> … 入力欄をまとめる箱
  • <label> … 入力欄の名前(ラベル)。for属性で入力欄と紐づける
  • <input> … 1行の入力欄。type属性で種類が変わる(textemailpasswordなど)
  • <button> … 送信ボタンなど
labelfor属性と、inputid属性を同じ値にすると、ラベルの文字をクリックしただけで入力欄にカーソルが移動するようになるよ。地味だけど大事な使いやすさ(アクセシビリティ)の工夫。

⚠️ ありがちなミス

  • 閉じタグを書き忘れる(<p>を書いたら</p>も忘れずに)
  • 属性の値を"(ダブルクォート)で囲み忘れる
  • <img>altをつけ忘れる
  • タグの入れ子が交差する(<b><i>text</b></i>はNG、<b><i>text</i></b>が正解)

できた!🐤✨

骨組みができたら、次は見た目を整える「CSS」を学んでいこう。

CSSを学びにいく →