2月16日(木)-HTML基礎③テキスト分類タグ/コンテンツ埋め込みタグ/画像の取扱い

テキスト分類タグについて

【要参考】HTML での記述を始めましょう | HTML-CSS 入門講座 | 情報デザイン工房 濱屋 ※「L2.7 テキスト分類タグ」以下が分かりやすい

a 要素(ハイパーリンク)

<a href=”リンク先情報”>ハイパーリンク定義情報</a>

ハイパーリンクする範囲を指定します。
外部サイトなどにリンクする時は「target=”_blank”」を付けることで新しいタブで開くことができます。

【注意事項】
「target=”_blank”」使用時に悪意ある外部サイトを指定しまうと外部サイトから自サイトを操作されるという脆弱性があります。
これを回避するために外部サイトを指定する時は「rel=”noopener noreferrer”」を同時に指定するようにしてください。

em 要素(強調)

<em>強調定義情報</em>

強調する(アクセントを付ける)範囲をを指定します。

strong 要素(強い重要性)

<strong>強い重要性定義情報</strong>

強い重要性を示す範囲を指定します。

small 要素(免責・警告・著作権など)

<small>免責・警告・著作権など定義情報</small>

免責・警告・著作権などの注釈や細目する範囲を指定します。
(コピーライトや著作権についての説明を書くのに使用する)

i 要素(声や心の中で思ったこと)

<i>声や心の中で思ったこと定義情報</i>

声や心の中で思ったことなど、他と区別したい範囲を指定します。

b 要素(キーワードや商品名など)

<b>キーワードや商品名など定義情報</b>

キーワードや商品名など、他と区別したい範囲を指定します。

span 要素(ひとつの範囲)

<span>ひとつの範囲定義情報</span>

ひとつの範囲として定義する範囲を指定します。
テキスト分類の中での<div>のようなもので、意味はないけど囲っておく範囲(後でCSSなど、範囲指定するときに便利とのこと)

br 要素(改行)

<br>

改行する箇所を指定します。本要素には、終了タグがありません。
普通にWordやメモ帳のように書いても改行は無視されるので、改行時には基本<br>を書く

コンテンツ埋め込みタグについて

img 要素(画像)

<img src=”画像パス名” alt=”代替テキスト”>

画像の埋め込み表示を指定します。本要素には、終了タグがありません。
「代替テキスト」は、画像が表示できない時に画像の代わりに表示するテキストを指定します。
※必須項目なので必ず指定してください。

iframe 要素(インラインフレーム)

<iframe src=”フレーム内に表示する URL”
  width=”フレームの幅”
  height=”フレームの高さ” title=”補足情報”>
  フレームが表示できない時のメッセージ</iframe>

インラインフレーム内に「フレーム内に表示する URL」で指定した URL の内容を表示します。「補足情報」には表示する内容の補足的な情報(ほとんどないけど、フレーム表示できない場合のメッセージ等)を指定します。
「フレームの幅」と「フレームの高さ」には、作成するフレームの大きさを指定します。幅の初期値は 300、高さの初期値は 150 です。

例:Webサイトに埋め込まれ表示されている、GoogleマップやYouTube動画など
◆Googleマップ→示したい位置が指定されている状態で左側メニュー→「地図を共有または埋め込む」→【地図を埋め込む】タブ→リンクコピーできる
◆YouTube→視聴画面右下の共有から埋め込みorリンクコピーできる

【外部サイトをiframeで表示することの著作権について】
(先生より)著作権は問題ないわけではなく、グレーゾーンとのこと。
最近はiframeで表示されるのを拒否しているサイトも多い(metaタグで設定できるとのこと)
拒否されている場合は、iframeを使用しても表示されないようになる。
※埋め込み表示できた(=拒否設定されていない)としても、著作権が問題ないわけではないので注意。

画像の取り扱いについて

【要参考】画像型式と品質・サイズ | HTML-CSS入門講座 | 情報デザイン工房 濱屋 以下が分かりやすい

<img>タグは、画像を表示する際に使用し、必須属性のsrc属性で画像ファイルのURLを指定します。一般的なブラウザで表示できる画像フォーマットとしては、PNG・GIF・JPEGがよく利用されています。 他にも、ウェブ用のベクター画像フォーマットであるSVGや、単一ページのPDF・アニメPNG・アニメGIFなどをsrc属性の値として指定できます。
alt属性には、画像が利用できない環境向けのテキストを指定します。 HTML5ではalt属性は必須ではありませんが、指定しておけばアクセシビリティーが高まるでしょう。

・jpg、jpegは同じ。先生は混ざっているのが心地よくないので個人的にjpgに統一しているとのこと。
・PNGは8はあまり使われず、24が主流とのこと。
・それぞれ使用目的などにより向き不向きがあるので、↑先生のサイト下部の表で見るとわかりやすい。

【参考サイト】

2月10日(金)-HTML基礎②文書情報と文書構造

HTMLの基本構造について

<!DOCTYPE html>
<html lang=”ja”>
<head>
  (文書の情報を記述)
</head>
<!– (コメント) –>
<body>
  (文書の本体を記述)
</body>
</html>

!DOCTYPE 宣言(ドキュメントタイプ宣言)

ドキュメントタイプ宣言は、この文書のバージョンを宣言するメタ情報です。HTML5 であれば<!DOCTYPE html>と記述します。

html 要素(HTML の文書)

html 要素は、この文書が HTML の文書であることを表します。「lang=”ja”」の “ja” は日本語で書かれた文書であることを表します。

head 要素(文書情報)

head 要素は、この文書のメタデータを記述します。例えば、<title>~</title>でその文書のタイトルを記述することができます。

body 要素(文書本文)

body 要素は、この文書の本文を記述します。この body 要素で囲まれた領域が Web ページとして表示されます。


文書情報について

【要参考】HTML での記述を始めましょう | HTML-CSS 入門講座 | 情報デザイン工房 濱屋 ※「L2.3 文書情報」以下が分かりやすい

title 要素(ページタイトル)

<title>Webページのタイトル</title>

Web ページのタイトル名を記載します。多くのブラウザではブラウザのタイトルタブに表示される名称となります。

meta 要素(文字コード指定/charset)キャラセット

<meta charset=”UTF-8″>

HTML を記述している文字コードを指定します。文字コードが UTF-8 の場合は “UTF-8” と指定します。
※UTF-8Nも charsetは“UTF-8”でOK

meta 要素(ページの説明文/description)ディスクリプション

<meta name=”description” content=”サイトの説明文”>

ページの概要を示す説明文を指定します。一般的には検索サイトでページ概要として表示され、PC は 120 文字程度、スマホは 50 文字程度が表示文字数となります。
検索したときにページタイトルの下に表示されるサイトの説明文で、検索エンジンが問題ないと判断すればそのまま表示され、問題ありと判断された場合は説明文ではなく、ページ本文が表示されるとのこと。

meta 要素(ページのキーワード/keywords)

<meta name=”keywords” content=”キーワード”>

ページの検索キーワードをカンマ(,)で区切って指定します。キーワードの有効可否は検索サイトに依存します。
このキーワードで検索したらこのページを見てもらいたい、という希望で記入するとのこと。
何個でもOKだけど、これも反映されるかは検索エンジンの判断によるとのこと。

meta 要素(ページの作者情報/author)オゥサー

<meta name=”author” content=”作者情報”>

Web ページの作成者情報を指定します。
ただ、先生によるとこれを記載しているサイトは見たことがないので、記載しなくてOK。
こういう要素があることだけ知っておけばOKとのこと。

meta 要素(ビューポート/viewport)

<meta name=”viewport” content=”width=device-width, initial-scale=1.0″>

Webページの表示領域を指定します。 上記の “width=device-width” デバイスの表示幅に合わせた表示領域を使用することを示し “initial-scale=1.0” は 1.0 倍の倍率で表示することを示します。 viewportを指定していないWebページをスマホで表示するとPC用の画面が縮小されて表示されます。 viewportを指定して複数の装置のデザインを実装することをレスポンシブWebデザインといいますが正しく実装するには、HTML に viewport を記述すると同時に CSS にレイアウト調整を行う記述が必要となります。

先生より、これは中身は特に変えずそのまま使用すればOKとのこと。

link要素(外部 CSS ファイルの紐付け)

<link href=”スタイルシートファイルのパス名” rel=”stylesheet” type=”text/css”>

外部のスタイルシートファイルとの紐付けを指定します。

link要素(ファビコンファイルの紐付け)

<link href=”ファビコンファイルのパス名” rel=”icon”>

ファビコンファイル(Web ページのシンボルアイコンファイル)との紐付けを指定します。一般的なファビコンファイル名は “favicon.ico” になります。
ファビコンファイルは、普通のJPGやPNGをファビコン用のicoファイルに変換が必要なので、変換サイトなどを使用するのがおすすめとのこと。


文書本文について

文書本文に記載するタグには、以下の分類があります。

・セクション分類タグ
・コンテンツ分類タグ
・テキスト分類タグ
・コンテンツ埋め込みタグ
・テーブルタグ
・フォームタグ

【参考サイト】

【ブロックレベル要素とインライン要素について】

要素の多くは、ブロックレベル要素とインライン要素に分類されます。
ただし、HTML5ではブロックレベル要素とインライン要素という考え方はなくなっていますので、あくまでも性質を持っていると考えておきましょう。

ブロックレベル要素

文書の骨組みとなる要素です(例えば見出しや段落など)。このタイプの要素は、body要素の直接の子要素として配置することができます。

インライン要素

文章中の一部として扱われる要素です(例えばリンクや文字の強調など)。このタイプの要素は、通常はブロックレベル要素内で使用します。

【参考サイト】


セクション分類タグについて

h1~h6 要素(見出し)

<h1>h1 レベル見出し情報</h1>
<h2>h2 レベル見出し情報</h2>
<h3>h3 レベル見出し情報</h3>
<h4>h4 レベル見出し情報</h4>
<h5>h5 レベル見出し情報</h5>
<h6>h6 レベル見出し情報</h6>

各レベルに従った見出しを指定します。一般的に h1 はページに 1 つだけ指定します。
h1タグ以外は、特に使用回数に制限はありません。
h2やh3などは大きな見出しとなることが多いためたくさん使われると思います。
「h2からh3を飛ばしてh4を使うような、順序を飛ばさないこと」
「h1タグは1ページで一回の使用で抑え、数字の順序をしっかり守ること」

これを守っていれば使用になんら問題はありません。
※html5の場合は1ページにh1タグが複数あっても問題ありませんが、特別な処理?をしないといけないため、現時点ではh1は1回のみと覚えておくこと。

【参考サイト】

article 要素(アーティクル)

<article>アーティクル定義情報</article>

例えば本記事に関連した別のコラムなど、単独で成り立つコンテンツのブロックを定義します。
なしでもOK。

section 要素(セクション)

<section>セクション定義情報</section>

章のブロックを定義します。
1つの章ブロックの範囲・領域を示す(セクションで囲まれた範囲)

header 要素(ヘッダー)

<header>ヘッダー定義情報</header>

ページ上部のヘッダーブロックを定義します。セクション要素やアーティクル要素内のヘッダー情報としても使用可能です。

footer 要素(フッター)

<footer>フッター定義情報</footer>

ページ下部のフッターブロックを定義します。
コピーライトや会社情報などが入っていることが多く、セクション要素やアーティクル要素内のフッター情報としても使用可能です。

nav 要素(ナビ)

<nav>グローバルナビゲーション定義情報</nav>

グローバルナビゲーションのブロックを定義します。

aside 要素(アサイド)

<aside>アサイド定義情報</aside>

サイドバーのこと。
カレンダーや検索フォームなど、ページの内容と関連がないブロックや補足情報のブロックを定義します。

【参考サイト】

コンテンツ分類タグについて

p 要素(段落(パラグラフ))

<p>段落定義情報</p>

段落(パラグラフ)を指定します。(通常状態の文章の段落範囲)
段落よりもふさわしい要素がある場合には使用するべきではありません。
【ワンポイントアドバイス】
マークアップに悩んだらとにかく「p」にしましょう。

hr 要素(区切り)

<hr>

テーマや話題の区切りを指定します。

ul/li 要素(順序のないリスト)

<ul>
  <li>リスト要素</li>
  <li>リスト要素</li>
</ul>

順序性のないリスト要素を指定します。

ol/li 要素(順序のあるリスト)

<ol>
  <li>リスト要素</li>
  <li>リスト要素</li>
</ol>

順序性のあるリスト要素を指定します。

dl/dt/dd 要素(定義・説明リスト)

<dl>
  <dt>説明する言葉</dt><dd>説明文</dd>
  <dt>説明する言葉</dt><dd>説明文</dd>
</dl>

説明文リストを指定します。

div 要素(ひとつのかたまりの範囲)

<div>ひとつのかたまりの範囲定義情報</div>

ひとつのかたまりの範囲を指定します。
<P>(文章段落範囲)とは別で、文章ではないけどひとかたまりの範囲を作りたいとき。

main 要素(メインコンテンツ)

<main>メインコンテンツ定義情報</main>

ページのメインコンテンツブロックを定義します。

メモ

◆先生より、サクラエディタは画面を上下で分けられ、それぞれ見ながら作業できるので操作しやすい。
TeraPadは上下表示できないが、色々なエディタがあるので色々試すと良いとのこと。

◆ナビゲーションについて(おおまかに言うとメニューのこと)
・グローバルナビゲーション=全ページ共通のナビ
・ナビゲーション=そのページのみのナビ

◆コピーライトについて
コピーライトはそのまま記号を入力してはいけないルールになっているので注意
入力する際は、&copy; と入れる
コピーライト記載時には、コピーライト表記・制作年・著作者名 の3つの記載が必要

◆エディタでの字下げ(タブキー?)は、中の親子データの振り分けを見やすくするため
例えば、ヘッダーの中にこういうデータ、こういうデータがあります…というのをぱっと見で分かるようにしている

2月9日(木)-HTML基礎①基本構造の理解

Webページ開発ツールについて

Webページ開発には、テキストエディタとブラウザが必要です。Windows標準にインストールされているメモ帳とEdgeでもWebページ開発が可能ですが、本訓練では、TeraPadとChromeを使用してWebページ開発を行います。TeraPadとChromeは、Windows標準ではインストールされていませんのでインストールを行ってください。

・先生は個人ではサクラエディタを使用されているが、授業では学校指定のTeraPadを使用とのこと
・最近では「VSCode」(Visual Studio Code)が流行っているとのこと

Webページの構成要素について

Web ページ = HTML(文書構造) + CSS(レイアウト・装飾) + JavaScript/jQuery(動き・処理)

HTML(ハイパーテキスト・マークアップ・ランゲージ)

HTML は、Web ページ内の各要素の意味や文書構造を定義します。

・ハイパーテキスト:Web ページから別の Web ページへのリンクを作成したり画像、動画、音声などの埋め込みを行います。
・マークアップ:文章の各要素が、どんな役割(見出し・段落・表・リストなど)を持っているかの目印を付けます。

CSS(カスケーディング・スタイル・シート)

CSS は、Web ページのレイアウトデザインや各要素の装飾(色・サイズ・レイアウトなど)を定義します。HTML に用意されている装飾タグを使用することである程度の装飾を行うことは可能ですが HTML は、文書構造を定義するためのものなので Web ページの装飾は、CSS を用いて行いましょう。

JavaScript と jQuery

Web ページに動きを付けたり計算などの処理を行うにはプログラミング言語である JavaScript を使用します。また、JavaScript を容易に記述できるようにした JavaScript ライブラリィである jQuery や JavaScript 機能ライブラリィを使用することもあります。

ページのソースについて

ホームページのソースとは? 普段何気なく見ているホームページなどのウェブページは、HTMLやCSSというマークアップ言語からできています。 これらの言語で書かれたファイルのことを「ソースファイル」と呼び、例えばHTMLで書かれたファイルを「HTMLソース」といいます。

★コードは公開され誰でも見えるようになるので、きれいに書く(就職時にも見られる可能性がある)
・ページ右クリック→「ページのソースを表示」でHTMLコード、「検証」でCSSが見える

文字コードについて

日本語を扱うための文字コードには、シフトJIS、EUC、UTF-8などがあります。Webページを作成する時の文字コードは、UTF-8N(UTF-8 BOMなし)を使用してください。
理由:現時点では、「UTF-8」だとBOM(先頭?に記入される文字)が不要物(ゴミ)と判断されてしまう場合もあるため、「UTF-8N」が良いとのこと

ファイルのパス指定について

ファイルを指定するためには、絶対パスでの指定方法と相対パスでの指定方法があります。それぞれの特徴を理解して使い分けましょう。

【要参考】HTML-CSS の勉強を始める前に | HTML-CSS 入門講座 | 情報デザイン工房 濱屋 ※「L1.3 ファイルのパス指定」以下が分かりやすい

・サイトを移転する際など、自己ファイルも絶対パスにしているとすべて書き換えが必要になってしまうので、なるべく自己ファイルは相対パスにする

【相対パス】
・自己ファイルと同じ階層のファイル
→基本「style.css」等のように、そのままファイル名を入れる
あえてフォルダ名を書く場合もあり、その場合には「./style.css」等のように「./」とピリオドを”1個”とスラッシュを入れる

・自己ファイルの上位階層のファイル
→「../index.html」等のように、「../」(ピリオド”2個”とスラッシュ)を先頭に付ける
【補足】2個上の階層指定するときは、「../../というように、2回記入する

・自己ファイルの下位階層のファイル
→「images/photo.jpg」「sub/index.html」等のように、下位階層のフォルダに格納されているファイルを指定する

・サイトルートからの相対パス
「/index.html」「/sub/index.html」等のように、ドメインのトップからのファイルのパスを指定する

HTMLの基本構造について

タグの構造

<要素名 属性=”属性値”>

【要素名】
タグの種別を指定します。タグ名とも言われます。

【属性】
要素名に対して設定する属性名を指定します。属性が複数ある場合は、属性と属性値の組合せを空白で区切って複数指定することができます。

【属性値】
属性に対する値を指定します。一般的には、ダブルクォーテーション(”)で囲んで指定しますが シングルクォーテーション(’)で囲むことも可能です。属性値がない時は、イコール(=)以降が省略されます。複数の属性を指定する時は、スペースで区切って指定します

HTMLの基本構造

<!DOCTYPE html>
<html lang=”ja”>
<head>
  (文書の情報を記述)
</head>
<!– (コメント) –>
<body>
  (文書の本体を記述)
</body>
</html>

!DOCTYPE 宣言(ドキュメントタイプ宣言)
ドキュメントタイプ宣言は、この文書のバージョンを宣言するメタ情報です。HTML5 であれば記述します。
・!DOCTYPE 宣言は閉じタグ不要

HTML 要素(HTML の文書)
html 要素は、この文書が HTML の文書であることを表します。「lang=”ja”」の “ja” は日本語で書かれた文書であることを表します。

HEAD 要素(文書情報)
head 要素は、この文書のメタデータを記述します。例えば、タイトルタグでその文書のタイトルを記述することができます。

コメント(自分用メモ)
webページには表示されないが、ソース表示で見えてしまうので、内容は気を付ける。
(※ページ公開時には消す必要ありそう?)

BODY 要素(文書本文)
body 要素は、この文書の本文を記述します。この body 要素で囲まれた領域が Web ページとして表示されます。

doctype宣言とは?

HTML5におけるDOCTYPE宣言はあまり意味を持たないとされていますが、 作成した文書がHTML5によるものであることを、ブラウザなどに明示的に伝えるために記述しておいたほうが良いでしょう。

DOCTYPE宣言が無いと、一般的なブラウザではレンダリングモードが互換モード(Quirks mode)となります。 互換モードのブラウザではCSSの解釈が標準と異なるため、制作者の意図しないレイアウトになってしまう場合があります。 ブラウザに標準モード(Standards mode)で解釈させる場合には、DOCTYPE宣言を記述する必要があります。 IE6も含めて、主要なブラウザでは文書の先頭に と記述することで標準モードとなります。

【注意】
楽天のショッピングサイトなどのテンプレートでは、 DOCTYPE宣言が無く互換モードになり、CSSが思うように使えなくなる場合があります。その場合やむを得ず、違う方法を使わなければならない場合がありますので、お仕事で担当した時は、 DOCTYPE宣言は必ず確認しておきましょう。

【参照】
HTML-CSS の勉強を始める前に | HTML-CSS 入門講座 | 情報デザイン工房 濱屋
HTML での記述を始めましょう | HTML-CSS 入門講座 | 情報デザイン工房 濱屋

メモ

◆httpとhttpsの違い
http →暗号化されていないページ
https→暗号化されたページ (”s”はセキュリティ)
⇒httpでログインが必要になるようなサイトは危険なのでパスワードやカード情報は入れない