• ベストアンサー

htmlとxhtmlの違い

xenotacticの回答

  • ベストアンサー
回答No.4

>xhtmlだとIE6でバグがたくさんあるようなので、 バグといえば、XML宣言を書くとCSSが互換モードになることくらいです。 >xhtmlで書く場合、文字コードはUTF-8にして、 そうですね、IE6の使用者が多い現在ではそれが良いです。 >htmlとxhtmlの違い HTMLはSGMLを元にしてできたもの。 XHTMLはXMLを元にしてHTMLを再現したもの。 >IE6ユーザーはまだ多いのでしょうか? 全インターネット利用者の30%ほどがIE6を使用しています。 最近IE7がIE6を抜きましたが、IE6,7を併せて全体の7割ほどとなっています。 >また、まだ文法に自信がないので、 >DOCTYPEの宣言を、TransitionalとStrictだったら、 >Transitionalを指定しておいた方がよいでしょうか? Transitionalは文法がテキトーでいいというものではなく、 Strictでは廃止されているタグを使用しても良いというものです。 例えばfontタグはTransitionalで使用できますがStrictでは使用できません。 どうしてもfontタグを使用しなければいけない場合はTransitional、 そうでなければStrictといった使い分けをするのが通常です。

acef
質問者

補足

>>xhtmlで書く場合、文字コードはUTF-8にして、 >そうですね、IE6の使用者が多い現在ではそれが良いです。 xml宣言は書かない方が良いという事ですか? みなさんの話を聞いていると、今はまだhtml4で作った方が良さそうな気がしていたのですが、どのように思われますか? Strictに使えないタグがあるのは知りませんでした。 まだまだ勉強不足ですね。

関連するQ&A

  • XHTMLのIEでの表示

    PHPを使ってXHTMLを出力しています。 下記のようなソースを使った場合、IE系ブラウザでXMLツリーが表示されてしまいます。IE8beta2、IE7、IE5で確認しています。 Google Chrome、Opera、FireFox 3ではこのような問題は起きていません。 どのようにすれば解決できるでしょうか。XML宣言を除けば一応表示はされたのですが。後方互換モードのことなどもIE7で改善されたとのことなので、混乱しています。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title></title> <body> </body> </html>

  • XHTMLのスペース

    XHTMLは誤作動を防ぐために <meta http-equiv="expires" content="0" /> このように最後はスペースを置くと聞いたのですが、DOCTYPE,XML宣言も<?xml version="1.0" encoding="Shift_JIS"? > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" > このようにスペースを置くべきなのでしょうか? ご回答おねがいします。

  • XHTML宣言についてですが自分のものでどこがおかしいのか解りません。

    XHTML宣言についてですが、 私はライブドアブログでブログを作っています。 ブログのチェッカーで引っかかりました。 現在の宣言内容です。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> XHTML1.0 では XML宣言をすることが強く求められています。 と指摘されましたがどうしたらいいかわかりません

  • XHTMLでサイトを作る時の文字コード

    今までHTML4.01+cssでいくつかサイトを作ってきましたが、今回初めてXHTML1.0+css2.0を使ってとある会社のサイトを作成することにしようと思います。 そのサイトは、WinのIE6とIE7、MacのFireFox3でレイアウトが同じになるように作成する必要があります。 そこで、IE6の「DOCTYPE宣言の前にxml宣言をいれると互換モードになる」という問題を回避するため、xml宣言を外し、標準モードで作成しようと思うのですが、文字コードがshift_jisなのが気がかりです。 開発環境上shift_jisまたはeuc-jpにしておきたいのですが、UTF8かUTF16でない場合はxml宣言での文字コード宣言が必要と書いている書籍が多かったのが不安の元です。 ただ、別にかまわないと書いているサイトも見受けられました。 xml宣言をなくしても問題はないでしょうか。

    • ベストアンサー
    • HTML
  • xhtmlについて

    xhtmlについて2点質問があります。 1.xmlの先頭1行のような記述は必要ですか? xmlは<?xml version="1.0" encoding="UTF-8" ?>のような宣言を1行目に必ず記述する必要がありますが、xhtmlもそうなのでしょうか?W3CのValidatorを使ってみましたが、あってもなくても違いが無かったようです。厳密には在った方が良いのですかね? 2.エンコードはUTF-8にするべき? xmlは基本的にencoding="UTF-8"ですが、UTF-8だと日本語表示が出来ません。しかしshift-jisはあまり推奨されないという話も聞いたことがあります。質問1の記述が必要になった場合、encoding="UTF-8"にするべきなのでしょうか?UTF-8がどれだけ普及しているのかも気になります。

    • ベストアンサー
    • HTML
  • XHTML1.1でのXML宣言とDTD宣言の書き方

    XML宣言によるレイアウトの崩れ等の質問はありましたが今回の質問と同じ内容は私には見当たらなかったため質問させて頂きます。 XHTMLでのXML宣言を <?xml version="1.0" encoding="utf-8"?> と記述しています。 上記の記述と <?xml version="1.0" encoding="UTF-8"?> とで、文字コードの大文字か小文字かの違いだけなのですがどちらの方が良いのでしょうか。 同じくDTD宣言を <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> と記述しています。 XMLでは大文字と小文字を区別して扱うため必ず半角で書かなければならないとされていますが、XHTMLでマークアップされているサイトのソースを見るとどこもXML宣言での文字コードとDTD宣言では大文字が使用されています。 細か過ぎるというのは分かっているのですが厳密にはどのような記載が正しいのでしょうか。 ※今回投稿カテゴリーの小カテゴリーにて”XML”を選択致しましたがXHTMLについての質問の場合”XML”と”HTML”どちらにするべきでしょうか。 合わせてご返答、又はご意見を頂戴できれば幸いです。

    • 締切済み
    • XML
  • XHTMLについての疑問

    XHTMLとCSSを利用してサイトを制作しています。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 最終段階になり下記のコードをHTMLファイルの先頭に追加しました。 宜しくお願いします。 <?xml version="1.0" encoding="shift_jis"?> IE6で確認すると文字サイズが上記コードを追加する前と比べると大きくなっています。 これは正常でしょうかそれともバグでしょうか。 また回避する方法はあるんでしょうか。 お教えください。 ちなみにCSSファイルには下記のように文字サイズを指定しています。 font-size: small;

  • XHTML+IE6

    既出だと思い過去の質問等を検索してみたのですが、見つからなかったので質問させてください。 XHTMLで書かれた文書をIE6で表示させた場合レイアウトが崩れたりするという話はよく耳にするのですが、自分の環境ではIE6で開いた場合何も表示されません。 右クリックからソースを表示させると正しく読み取れてはいるようなのですが・・・。 最初の行にXMLの宣言があるのが原因かと思い、消してみたのですがやはりなにも表示されませんでした。 IE Version:6.0.29 XHTML1.0(utf-8 encoded) 宜しくお願いします。

  • DOCTYPE宣言とdocument.body.clientHeight

    お世話になります。 ブラウザのサイズを取得するにはどうすればよいのでしょうか? document.body.clientHeightで取得出来るのは分かりましたが DTDにより動作したり、しなくなるのも分かりました。 ×動作しない <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ○動作する <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 後者のものですとIEでは動作しますが、firefoxでは動作しません。 何か対処法は、御座いませんでしょうか? 一番望む形は <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> の宣言で、ブラウザサイズが取れるようになるのがベストです。 CSSを使用しているので<?xml version="1.0" encoding="UTF-8"?>を入れると 表示モードが互換になるので・・・。 対応したいブラウザはIE6.0、firefox,Safariです。 一応ソース <?xml version="1.0" encoding="UTF-8"?> <!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"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script> function init(){ var bodyHeight = document.body.clientHeight; alert(bodyHeight); } </script> </head> <body onload="init();"> <div> ほげ </div> </body> </html>

  • XHTMLについて

    XHTMLは小文字で書けば問題無いと聞いたのですが、極端にいうと XML宣言やDOCTYPE宣言もすべて小文字で書いてOKということなのでしょうか?ご回答お願いします。