Another HTML-lint: 新テンプレートで高得点を狙う

この手のエントリは将来的にも発生するのが見え見えなのですが、Movable Type 3.3: MTIfNonZeroでコメント無しのエントリURLを Valid に (CEFA::Blog)の序にチェックした所を修正という事で作業メモ。因みに何処まで減点を避けられるのかというゲーム感覚で修正していますので減点0に関連する項目までは対応していません。その辺りはご了承ください。

チェックの方式

Another HTML-lint gateway はこのサイトのドキュメントタイプである XHTML 1.1 plus MathML 2.0 を解釈する事ができません。従って強制的に XHTML 1.1 でチェックをする様に指定します。チェック項目についてはディフォルトの状態(リンク先の確認以外全てチェック)で行います。

メインインデックスをチェック

修正前のチェック結果です。

http://cefa.sakura.ne.jp/index.php を XHTML1.1 としてチェックしました。
64個のエラーがありました。このHTMLは 85点です。タグが 36種類 643組使われています。文字コードは UTF-8 のようです。

尚、当サイトはドキュメントタイプの性質上必ず次の項目がエラーとして発生します。ですので100点はありえません。悲しいですがこれは仕方が無い事です。この減点項目以外で何処まで点数を稼げるかが鍵となります。

6: line 3: 不明な DOCTYPE宣言です。 → 解説 4

さてメインインデックスで指摘されたのは2箇所でしたが、その内修正すべきと判断したのは次の箇所だけです。

1: line 756: <a> のアンカー `Permalink` は 687行目で異なるリンク先を指しています。 → 解説 208
1: line 757: <a> のアンカー `Re:0` は 688行目で異なるリンク先を指しています。 → 解説 208
1: line 758: <a> のアンカー `TB:0` は 689行目で異なるリンク先を指しています。 → 解説 208

このメッセージはエントリの数だけ発生します。エントリのフッターが現れる度に引っかかるからです。この部分は title 属性でエントリIDを追加してやる事で解決する事にします。今回は次の様な感じで追加してみました。

<a class="permalink" href="<$MTEntryPermalink$>" title="<$MTBlogName$>:<$MTEntryID pad="1"$>">Permalink</a>

同じ様にコメントやトラックバックへのアンカー部分にも追加してやります。以上の修正をしたところで再度チェックしてみました。

http://cefa.sakura.ne.jp/index.php を XHTML1.1 としてチェックしました。
33個のエラーがありました。このHTMLは 89点です。タグが 36種類 610組使われています。文字コードは UTF-8 のようです。

残りの11点に言及しようとするとテンプレートが汎用性を失ったりブログならではの手軽さが無くなっていきますので今回はこれにて終了。減点がどの様に行われているのかは置いておいて減点対象になる項目については対応完了とします。