- ベストアンサー
空要素タグは/>で閉じてはいけないのですか?
空要素タグは/>で閉じてはいけないのですか? <img src="URL" alt"説明" />をAnother HTML-lintでチェックをしてみたのですけど、 「XHTML以外では、空要素タグを /> で閉じることはできません。」と出てきました。 FC2ブログを使ってるんですけど、テンプレートのメタタグとかには全て/>が入っていました。 空要素の/>はやめた方がいいのでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
SGMLとXMLの違いですね。 SGMLにはSGMLのルールが、XMLにはXMLのルールがあります。 XMLの一種であるXHTMLは、空要素は必ず /> で閉じる必要があります。 対してSGMLの一種であるHTMLは、空要素を /> で閉じてはいけません。 FC2ブログのテンプレートには全て /> が入っている、つまりXHTMLですね。 空要素は必ず /> で閉じる必要があります。 Another HTML-lint でXHTMLに設定してもう一度チェックしてみて下さい。 /> のエラーはでなくなるはずです。
その他の回答 (2)
- ORUKA1951
- ベストアンサー率45% (5062/11036)
Another HTML-lintでチェックするとき、ソースを張り付けてチェックするのなら、DOCTYPEが、HTMLになっているか、あるいは下の詳細できちんと指定しているかで結果が変わります。 XHTMLとしてチェックすれば、そのメッセージは出ないはずです。 XHTMLは、HTMLをSGML直属のXMLに合わせてルールを書き直したもの。 XMLは、ISO標準 Standard Generalized Markup Language (SGML) のサブセット。 HTMLはSGMLの仕組みを流用はしています。というかDTDによって拡張されたものと考えるのが妥当でしょう。HTMLはSGMLではない。 HTMLは内容を持たない要素を示すタグが認められていますが、
お礼
はいXHTMLとしてチェックしたらエラーメッセージは出なかったです。
スキーマがXHTML(!DOCTYPE が XHTML であるコンテンツ)ならでき、HTMLではできないということです。
お礼
XHTMLだったようです。問題なさそうですね。
お礼
大きく分けてSGMLとXMLがあるのですか。知りませんでした。 チェック時はHTMLでチェックしてました。