Valid XHTML1.1 / CSS に
- 2007/12/17(月) 23:00
- Web | 更新情報
- Add comments
サイト全体をValidなXHTML1.1 and CSS に…したつもりです。ひとまず完了。今後は本文中のコードとかメタ文字のエスケープに気をつけよう。
WPにしてからいじり方がよくわからなくてHTMLをValidにするのを保留にしておいたのですが(そもそもWPの動作ですっころんでいましたから)、悔しいので一念発起。
出るエラーをひとつずつやっつけるのであります!行くぜ!(不眠のためテンションがおかしいです)
とりあえず The W3C Markup Validation Service でValidになって、 Another HTML-lint gateway で90点台を目指します。久々です…。
いじったところやエラーのメモ、参考サイトなど。
HTML
- Conflict between Mime Type and Document Type
- このドキュメントのHTTPヘッダには text/html のMIMEタイプが設定されているが、これはXHTML 1.1文書にふさわしくありません、と。
どうやってもこのエラーを直す方法がわからないし、直しているサイトを見たことがないので放置。application/xhtml+xmlのレスポンスヘッダを出すとIEがドキュメントとして開いてくれず閲覧できないので、その兼ね合いで難しいところもある…んでしたっけ。(あいまい) - 追記。参考は下記。
-
meta http-equiv宣言を使わずに、XHTML文書の MIMEタイプを設定する必要があります。そこで、直接、HTTPヘッダに MIMEタイプを設定する方法をとります。サーバーソフトウェアに Apache を利用しているウェブサーバーであれば、.htaccess を使うことができるので、HTTPヘッダに直接、"application/xhtml+xml " のMIMEタイプを設定する方法をとります。しかし、その結果は致命的なことにブラウザシェア率の大半を占める Internet Explorer では、MIMEタイプ を "application/xhtml+xml" に設定していると XHTML文書として扱われずに、ダウンロードファイルとして扱われることになります。
(中略)
多くのユーザーの観覧環境を配慮するとなると、HTTPヘッダには "text/html" のMIMEタイプを設定するのが、現状では最良の方法だと考えられます。確かに、XHTML文書を HTML文書として読み込ませることには、XHTML文書としての意味がほとんどありません。これではただ、XMLベースのマークアップをしただけで、実際は HTML文書とほとんど変わりがないからです。しかし、現実的な XHTML文書のためには、XHTML文書を読み取る UA を考慮して、HTML文書として読み込ませなければならない状況にあります。また、仕様においても XHTML文書の MIMEタイプ に "text/html" を指定することは非推奨(Should not)とあるだけで、禁止(Must not)といった記述は見当たらないので、現状では UA の対応状況を考慮した上で XHTML文書の MIMEタイプを "text/html" と指定することは現実的な XHTML文書としての意味合いでは、強ち間違いではないでしょう。cite : XHTML1.1
- 文字コードを「UTF-8N」にする
- 下記のCSSと共通する項目ですが、BOMなしの文字コードが望ましいようです。
- プラグイン吐き出しソースの修正
- PXS-MailのソースがValidではなかったのを修正。本文中に挿入する性質上(と思うのですが)勝手にPタグが開始されたり終了されたりするので、そのへんを調整。
- 本文中のソースを修正
- amazletで作成したソースを修正(name,target属性を削除、中身のないdivへの対応)
その他エスケープしていないメタ文字などを修正。(コードモードで編集するとエスケープしてくれないんだった…)
CSS
- 文法解析エラーが発生しました - ���@charset "UTF-8";
- 文字コードはHTML(というかPHPファイル)同様「UTF-8N」でエンコードする。
参考:ちぷろぐ » Blog Archive » UTF-8とCSS Validation Service。 - 文法解析エラーが発生しました - opacity=80) プロパティ opacity は存在しません : 0.8
- うるせーよ半透明にしたいんだYO!と、非推奨のブラウザ独自実装仕様を使っておいて逆ギレしておこうっと。
「アルファ画像を扱うalphafilter.jsライブラリ[to-R]」で何とかなるような気もしますが、ちと保留。
参考:Validを目指したが・・ « MMRT daily life - とりあえず半透明はやめました。

