• 締切済み

HTMLソースにXHTMLの混在は可能ですか?

はじめまして。 早速ですが、 現状、サイトAとサイトBがあり、 サイトAは <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> で定義されたHTML文書で書かれており、 サイトBは <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> で定義されたXHTML文書で書かれています。 そして、サイトBのフッターにあるグローバルメニューをサイトAの方にも挿入・反映したいと考えています。 このような場合、HTML文書の中にXHTML文書を混在させることは可能なのでしょうか? 皆様のお知恵を拝借させてください。 宜しくお願い致します。

みんなの回答

  • UKY
  • ベストアンサー率50% (604/1207)
回答No.2

一応「script/style 要素は中身の解釈の仕方が違うので適宜書き換える」とは書きましたが、実際のところ、script/style 要素の手直しが必要になるのはどちらかというと HTML を XHTML に書き換えるときのほうで、XHTML を HTML に直すときは手直しする必要がない場合がほとんどです。 というのも、script/style 要素を使うときにコメントのこととか CDATA セクションのこととかで気を使わなければいけないのは XHTML の方で、HTML の方は従来の「一般的」 な書き方でそのまま書いておけば問題ないからです。 (実際、XHTML で script 要素が間違って書かれていることはよくあるが、HTML では間違っていることはまずない)

参考URL:
http://www.aquea.jp/2005/10/html-script-element
  • UKY
  • ベストアンサー率50% (604/1207)
回答No.1

基本的に HTML と XHTML は別物なので混在できないのですが、構文は似ているのでちょっと手直しをすれば HTML 4.01 Transitional の中にもともと XHTML 1.0 Transitional だったものを入れることができます。 手直しの際に気をつけるべきことは、大体以下のような点です。 * HTML では xml:lang 属性ではなく lang 属性を使う。 * br や img などの中身のない要素は、タグの最後の部分を「/>」から「>」にする。 * script/style 要素は中身の解釈の仕方が違うので適宜書き換える。

Lenze
質問者

お礼

はじめまして。UKYさん。 返答ありがとうございます。 うーんやはりご指摘のとおり、要素の無い閉じタグの扱いなどの違いを吸収させる必要があるということですね。。。 ありがとうございます。 ところで、自身勉強不足で恐縮なのですが、 >script/style 要素は中身の解釈の仕方が違うので適宜書き換える。 の「中身の解釈の仕方が違う」ということですが、JavaScriptやCSSで書かれた内容の解釈がXHTMLとHTMLに取り込んだ場合では異なるということでしょうか? また、このあたり自身で調べる場合、何か適切な書籍やサイトはありますか? このあたりお教え頂ければ幸いです。

関連するQ&A

専門家に質問してみよう