トップページ活動報告運用規則活動履歴参加者名簿勉強会

HTMLの注意点


[発表者:越前谷 宏紀]

2002/9/19

- contents -
1.HTML1-1.タグ(要素)
1-2.属性
1-3.ドキュメントタイプ
1-4.絶対パスと相対パス

2.文字コード

3.特殊文字3-1.タグの表記に用いられる記号
3-2.機種依存文字

4.スタイルシート(CSS)4-1.スタイルシートって...
4-2.外部スタイルシートファイルを利用する
4-3.HTMLファイル内でスタイルを設定する
→ スタイルシートで行間を設定する

5.参考リンク

1.HTML

HTMLの基本・書き方についてはとほほのWWW入門などを参考に勉強してください.
ここでは特に注意すべきことについて述べていきます.

1-1.タグ(要素)

HTMLにはたくさんのタグがありますが,ブラウザの種類やバージョンによって対応していないタグもあります.以下に最低限覚えておきたいタグを列挙しておきます.参考にしてください.

用途タグ
基本HTML
HEAD
TITLE
META
BODY
リンクA
構造H1〜H6
P
BR
水平線HR
スタイルDIV
用途タグ
フォントFONT
B
I
画像IMG
リストDL
DT
DD
テーブルTABLE
TR
TD
アドレスADDRESS

リンクをクリックするととほほのWWW入門のそれぞれのタグの説明に飛びます.

1-2.属性

<IFRAME>のような要素だけでなく,タグの中に書く属性にもブラウザによって対応していないものがあるので注意してください.

<FONT face="Times New Roman">This is Japan.</FONT>

たとえば,FONT要素のface属性は,日本語の文字コードで書かれたHTMLだと,NNでは無視されます.

1-3.ドキュメントタイプ

HTMLファイルの先頭に記述し,そのHTMLファイルで使用しているHTMLのバージョンを宣言する<!DOCTYPE>ですが,誤った宣言をしているのが多く見受けられるようです.

フレームを使わない場合,以下のように書いてください.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

フレームを使う場合は,以下のように書いてください.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">

1-4.絶対パスと相対パス

他の人が作ったページをコピーして新しくページをつくるための下地にする場合,相対パスで書かれたリンクに注意してください.コピー元のページが置かれているディレクトリと新しくつくるページを置くディレクトリが異なると間違ってリンクされてしまいます.

http://www.ep.sci.hokudai.ac.jp/~posty/study/xxx.html から見た場合
絶対パスで書かれたリンク
http://www.ep.sci.hokudai.ac.jp/~posty/index.html

相対パスで書かれたリンク
../index.html

<A>だけでなく<IMG>や<LINK>に書かれたリンクにも注意してください.


アップロードの前にHTML Validation Serviceで正しく使えてるか確認しましょう.


2.文字コード

文字化けを避けるために文字コードの宣言を正確に行いましょう.
通常,Windows/MacはシフトJIS,UnixならEUCです.
<HEAD>〜</HEAD>の間に以下のMETA要素を入れて下さい.

[シフトJIS]

<META http-equiv="content-type" content="text/html; charset=Shift_JIS">

[EUC]

<META http-equiv="content-type" content="text/html; charset=euc-jp">

シフトJISはアンダーバー( _ ),EUCはハイフン( - )で,紛らわしいので注意してください.

SSHなどでHTML文書を書き換えて保存したりすると文字コードがJIS(シフトJISとは別物)になるようです.ブラウザのエンコードで上記の二つの場合とも文字化けする時は以下のように書き換えてください.

[JIS]

<META http-equiv="content-type" content="text/html; charset=iso-2022-jp">

作ったファイルの文字コードがわからないときはHTML Validation ServiceでOptionsの「Show Source」をチェックして,予想される文字コードを「Character Encoding」で選択して,ソースをチェックしてみましょう.ソースが文字化けしていなければ正解です.

encode.gif


3.特殊文字

3-1.タグの表記に用いられる記号

これらを使いたい場合は以下のように書きましょう.

<   →   &lt;
>   →   &gt;
&   →   &amp;
"   →   &quot;

半角スペースを続けたい場合は以下で代用できます.

&nbsp;

3-2.機種依存文字

他のOS上では制御文字などの記号にあたるため,インターネット上での使用が禁止されている文字があります.
半角カタカナと機種依存文字は危険なので使わないようにしましょう.


4.スタイルシート(CSS)

4-1.スタイルシートって...

『HTML』の本来の機能は,「見出し」「段落」といった文書の構造を定義することです.それに対して,「文字の色」「文字の太さ」といった文書の見栄えを指定するのが『スタイルシート』の役割です.

スタイルシートを使えば,<H1>といった要素ごとに見栄えを一度に指定できるので,デザインが楽になりページに統一性を持たせることができます.構造と見栄えを分けることでソースが見やすくなり変更作業も楽になります.訪問者は作者のスタイルシートを無視して自分の好きなスタイルシートファイルを適用することができるので,訪問者にやさしいページになります.

ただし,スタイルシートにも問題がないわけではありません.ブラウザの種類やバージョンによって対応されていないスタイルシートもあります.とくにNN4では,文章と文章が重なってしまったり,一部が表示されなかったり,動作が不安定になったり,異常終了したりすることが多いので,あんまりマニアックなスタイルシートを使うことは危険です.それに見栄えの何から何までスタイルシートで指定しようとすると労力も馬鹿になりません.状況によっては<FONT>や<B>や<I>などといった見栄えを指定するタグを使うバランス感覚が大事かもしれません.

4-2.外部スタイルシートファイルを利用する

この「3rd Project Web Site」ではスタイルシートファイルが用意されています.
http://www.ep.sci.hokudai.ac.jp/~posty/stylesheet.css
IE/NN4だとクリックしても見れないかもしれません.以下に内容を解説します.(2002/9/19現在)

ソース解説
body{
color: black;
background-color: #f5f5f5;
margin: 4em;
}
BODY要素
文字色:black
背景色:#f5f5f5
他要素との間隔:4基準フォントサイズ

h1 {
border-top: medium dotted;
border-bottom: medium dotted;
padding:0.5em;
text-align: center;
}
H1要素
ボーダー(上):中(太さ) 点線
ボーダー(下):中(太さ) 点線
内容との間隔:0.5基準フォントサイズ
表示位置:中央

h3 {
margin-top: 3em;
border-bottom: medium groove;
}
H3要素
他要素との間隔(上):3基準フォントサイズ
ボーダー(下):中(太さ) 溝型

h4 {
margin-top:2.5em;
margin-bottom: 0em;
}
H4要素
他要素との間隔(上):2.5基準フォントサイズ
他要素との間隔(下):0基準フォントサイズ

li {
font-family: monospace;
}
LI要素
フォントの種類:monospace
(NNでは非対応です)
ul,ol {
margin-bottom: 2em;
}
UL要素,OL要素
他要素との間隔(下):2基準フォントサイズ

ol.ab {
list-style-type: lower-alpha;
}
OL要素 class="ab"
マーカーの形:小文字のアルファベット

ul.date {
list-style-type: none;
}
UL要素 class="date"
マーカーの形:なし

上記のスタイルシートを反映させるには,
<HEAD>〜</HEAD>の間に以下のLINK要素を入れて下さい.

<LINK rel="stylesheet" type="text/css" href="http://www.ep.sci.hokudai.ac.jp/~posty/stylesheet.css">

4-3.HTMLファイル内でスタイルを設定する

HTMLファイル内でスタイルを設定するには,
<HEAD>〜</HEAD>の間に以下のようにSTYLE要素を入れて下さい.

<STYLE type="text/css">
   <!--
      P,A{
         line-height:130%;
      }
   -->
</STYLE>

この例ではProject会議でも話題に出た行間について扱ってみました.
P要素とA要素の行間を30%( = 130% - 100%)とっています.
本当はBODY要素に設定して一気に...やりたいところですが,NN4だと要素の中で一番最初に現れた文字を基準に行間が設定されて,以降は変更されないので,やけに行間が開いたり文字が重なったりするため,P要素とA要素に設定してみました.ただしやっぱり要素内でフォントのサイズを途中から変えても反映されないのでそういうことをすると重なったりします.それから<P>〜</P>内に画像があっても,画像の高さに合わせてくれないので,別の行の文字が画像に隠されてしまうという最悪の事態が発生します.IMG要素の前で必ずタグを閉じてください.IEや新しいブラウザなら問題ないのですが...使う場合はとにかく注意しましょう.
このページの行間は上記のとおりに設定してありますが,どんな塩梅でしょうか?

他にもタグ内でスタイルシートを定義する方法もありますが,NN4でよからぬことが起こる可能性が大なのでお奨めできません.
詳しくはとほほのスタイルシート入門などで勉強してください.

アップロードの前にW3C CSS 検証サービスで正しく使えてるか確認しましょう.
(HTMLファイル内のスタイルシートを検証するには事前にアップロードが必要です.)


5.参考リンク

HTML Validation Service
W3C CSS 検証サービス
とほほのWWW入門
やってはいけない!! ホームページの掟
通信では使ってはいけない文字

Valid HTML 4.01!    Valid CSS!   ←  こんな感じでがんばりましょう

更新日  2002/09/21(越前谷 宏紀)


トップページ活動報告運用規則活動履歴参加者名簿勉強会