HTML は意味を付ける言葉
HTML(ハイパーテキスト・マークアップ・ランゲージ)は、Web ページの中身に意味を付ける言葉です。見出し、リスト、リンク、フォームを正しく選ぶと、人にも検索エンジンにも読みやすいページになります。
大学の学食のメニューページを例に、タグでページを組み立てる方法を学びます。
このレッスンのゴール
メモ
意味のある HTML のタグを選んで、ページの構造を作れる。
重要な言葉
| ことば | いみ | れい |
|---|---|---|
| 要素 | ページの1つの部品。タグで書く | <p>こんにちは</p> |
| タグ | 要素の始まりと終わりを示す印 | <h1> と </h1> |
| 属性 | 要素に付ける追加の情報 | href="menu.html" |
| 見出し | ページや節の題。h1 から h6 まで | |
| ランドマーク | ページの大きな区分を示す要素 | <nav> |
学生が入力するセルは、このプレビューでは空白です。
タグで要素を囲んで書く
HTML は、文字をタグで囲んで書きます。<p> が始まりのタグで、</p> が終わりのタグです。
始まりから終わりまでが、1つの要素です。要素は入れ子にできます。リストの中に項目を入れるのが、その例です。
例: 見出しとリストを書く
<h1>学食のメニュー</h1>
<p>今日の定食は3つです。</p>
<ul>
<li>焼き魚定食</li>
<li>唐揚げ定食</li>
<li>野菜カレー</li>
</ul>
<!-- 練習: li を1つ足して、もう一度 Run しましょう。 -->
見出しは文字を大きくする道具ではない
h1 から h6 は、ページの題と節の見出しです。h1 がページの題で、その下に h2、さらに下に h3 が続きます。
文字を大きくしたいときは、見出しではなく CSS を使います。見出しの順番は、目次として、画面を読み上げるソフトにも使われます。
例: 役目を表す要素
| 要素 | 役目 | 学食ページでの例 |
|---|---|---|
| header | ページの頭 | 店名と道しるべ |
| nav | 別のページへの道しるべ | 今日、週間、問い合わせ |
| main | ページの主役の内容 | 今日の定食の一覧 |
| section | 内容のまとまり | 定食、アレルギー情報 |
| footer | ページの終わり | 営業時間と住所 |
学生が入力するセルは、このプレビューでは空白です。
div より役目のある要素を選ぶ
div は、意味のない箱です。header や nav のように役目を表す要素を使えば、画面を読み上げるソフトがページの区分を伝えられます。
ボタンも同じです。押せる箱を div で作らずに、button を使います。キーボードでも押せるからです。
ラボのページを調べる
ラボには、小さなランチメニューのページが入っています。ターミナルから、Python のスクリプトでその HTML を調べられます。
スクリプトが出す言葉は英語です。tags in all はタグの合計、h1 と h2 は見出しの段を表します。
タグを種類ごとに数える
docker exec jupyter python3 steps/tags.pyここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
見出しだけを取り出す
docker exec jupyter python3 steps/outline.pyここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
よくある間違い
注意
小さく見せたいから h4 にする、という使い方をする人がいます。見出しは文字の大きさではなく、構造を表します。h2 の次に h4 を置くと、目次に穴が空きます。見た目は CSS で変えます。
リンクと入力欄には属性が要る
a 要素は、href 属性に行き先を書きます。#menu と書くと、同じページの id="menu" の場所へ飛びます。
入力欄には label を付けます。label の for と、input の id を同じ名前にすると、2つが結び付きます。
練習: ラベル付きの入力欄
<h2>席の予約</h2>
<form>
<label for="name">お名前</label>
<input id="name" type="text">
<label for="seats">人数</label>
<input id="seats" type="number">
<button type="submit">予約する</button>
</form>
<!-- 練習: ラベルの文字を押して、入力欄に移ることを確かめましょう。 -->
リンクの行き先を調べる
もう1つのスクリプトは、ページのリンクを1つずつ調べます。found は行き先がページにあること、MISSING はないことです。
a file here はこのフォルダのファイル、another site は別のサイトを指します。
リンクの行き先を調べる
docker exec jupyter python3 steps/links.pyここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。