lionusの日記(旧はてなダイアリー)

「lionusの日記」http://d.hatena.ne.jp/lionus/としてかつてはてなダイアリーにあった記事を移転したものです。

ちりも積もれば山となる。

ホームページ作成の授業,本日が作品提出でした。
自宅で作ってきたファイルを,大学PCの環境(Win7+IE8)で見て,びっくりしている学生さんがひとり。
テーブルでレイアウトを組んだページの上部にやたらと空白が生じているのです。
センチメートルでいえば,15センチくらいだったかしら。
ページを下スクロールしないと,肝心の内容(文章等)が見られないという変な状態でした。
自宅ではFireFoxで見ていたそうで,その場合,そんなページ上部の空白などなかったというのです。
ソースを見ても,テーブルの組み方には特に問題はなさそうでした。
う〜むと,ソースとにらめっこすることしばし。
ふと気が付いたのが,テーブル関係のタグがインデントされていることでした。
つまり,こんな感じです。

<table>
 <tr>
  <td>ほにゃらら</td>
 </tr>
</table>

lionus:「これ,インデントされてるけど,タブでやってるの?」
学生さん:「そうだと思いますけど・・・」
エディタ上でインデント個所にカーソルを移動して探ってみると,どうもこれは全角スペースでインデントしている感じがしました。
lionus:「・・・これタブじゃなくて,全角スペースでインデントしてるんじゃない?」
学生さん:「?」
埒があかないなと思ったので,エディタの置換機能で,HTML文書内の全角スペースを全て削除してみました。
はたして,”インデント”されていた個所は全て無くなりました
タブじゃないじゃん。全角スペース使ってんじゃん。嘘つけ(笑)
と,思いつつ,全角スペースはコンピュータにとっては一つの文字として扱われること,そして見かけ上のインデント用に使われた全角スペースがまるで”宙に浮く”形になり,IE側の処理の結果,テーブルの上部にそれらの全角スペースがちりと積もり,結構大きな空白空間を作り出したことを説明しました。