クリーム色の背景、色付き表示、高コントラスト、大きな文字のほうが読みやすいですか?配色と文字を選ぶと、すべてのページに一度で反映されます。

無料レッスン

HTML でページの構造を作る

このレッスンのあとで: 意味のある HTML のタグを選んで、ページの構造を作れる。

55分のレッスンコマンド3件フロントエンド Web ラボ:HTML、CSS、JavaScript をブラウザーでライブプレビュー

HTML は意味を付ける言葉

HTML(ハイパーテキスト・マークアップ・ランゲージ)は、Web ページの中身に意味を付ける言葉です。見出し、リスト、リンク、フォームを正しく選ぶと、人にも検索エンジンにも読みやすいページになります。

大学の学食のメニューページを例に、タグでページを組み立てる方法を学びます。

このレッスンのゴール

メモ

意味のある HTML のタグを選んで、ページの構造を作れる。

重要な言葉

ことばいみれい
要素ページの1つの部品。タグで書く<p>こんにちは</p>
タグ要素の始まりと終わりを示す印<h1> と </h1>
属性要素に付ける追加の情報href="menu.html"
見出しページや節の題。h1 から h6 まで
ランドマークページの大きな区分を示す要素<nav>

学生が入力するセルは、このプレビューでは空白です。

タグで要素を囲んで書く

HTML は、文字をタグで囲んで書きます。<p> が始まりのタグで、</p> が終わりのタグです。

始まりから終わりまでが、1つの要素です。要素は入れ子にできます。リストの中に項目を入れるのが、その例です。

例: 見出しとリストを書く

コード: web
<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つが結び付きます。

練習: ラベル付きの入力欄

コード: web
<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

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

このラボとソースについて: フロントエンド Web ラボ:HTML、CSS、JavaScript をブラウザーでライブプレビュー

授業で使いますか?このモジュールを学生に割り当てると、教員用ガイド、自動採点つきの課題、学生ごとのラボを使えます。