• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:htmlについて)

HTMLとXHTMLの違いやHTMLのDTDについて知りたい

notnotの回答

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4856/10272)
回答No.2

>htmlでも問題はないですよね? はい。 >xhtmlの方がかっこいいという風潮があったりしますか? プログラムで読み取ったりするときはXMLパーサが使えるのでxhtmlの方が便利ですが、html5の方が今風です。 >私が以前URLを記述するタイプのもので宣言した時、cssでレイアウトが思うようにいかず、スタイルシートはそのままでURL部分を削除しただけで、レイアウトうまくいくようになった経験があります。 ブラウザのレンダリングモードで、標準モードとQuirks("奇妙な"と言う意味で昔のブラウザとの互換用)モードがあるのをご存じでしょうか? <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> だと、Quirksモード、 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> だと標準モードになります。標準モードでうまくレイアウト出来ないというのは、あなたのHTMLやCSSが標準規格に則っていないと言うことです。IE4、IE5時代のHTML/CSSをそのまま使いたいのであれば、Quirksモードを選択することになります。 細かいことですが、DOCTYPE宣言の中の http://www.w3.org/TR/html4/loose.dtd 等はURLではありません。

kimufusi
質問者

お礼

お礼が遅くなってしまい申し訳ありません。 分かりやすいご回答ありがとうございました!

関連するQ&A

  • XHTML&CSSとドリームウィーバーについて

    最近というかずいぶん前からですが、ウェブサイトの制作に XHTML&CSSで記述しているサイトをよく見かけますが、 これにするメリットはただのhtmlと比べ何が優れているのでしょう? わたしとしては、htmlしかしらず、ドリームウィーバーver4で、 サイトを制作していましたが、最近、初めてXHTML&CSSで記述している サイトを読み込んで、レイアウトがめちゃめちゃなのに驚きました。 テーブルレイアウトでしか作ってこなかったので、正直どうして いいか戸惑っています。今後どうしたらいいのでしょうか? またドリームウィーバーの最新バージョンは、テーブルレイアウト のような簡単な見え方で、XHTML&CSSで記述ができるように なっているのでしょうか?

    • ベストアンサー
    • CSS
  • 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
  • DreamWeaverでのスタイルシート適用後のプレビューについて

    最近やっとDreamWeaverを購入してテーブルからCSSデザインに 乗り換えようと奮闘中のものです。 外部スタイルシートに div#container { background: #ffffff; padding: 20px; margin: 10px 30px; border: 2px solid #999999; } と書き、 HTMLのほうに、 <!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=Shift_JIS" /> <link href="/test.css" rel="stylesheet" type="text/css" /> <title>test</title> </head> <body> <div id="container"> test web site </div> </body> </html> と書きプレビューしてみたのですがスタイルシートが 適用されません。 デザインビューでは適用されているのですが、、、 何が原因なのでしょうか?

  • xhtmlでの画像サイズ指定について質問です。

    xhtmlでの画像サイズ指定について質問です。 htmlでは、例えば800×800の画像でも、スタイルシートのクラス指定(下記は外部にcssを記述)などで (中略) <link rel="stylesheet" href="size.css" type="text/css" media="screen" /> (中略) <img src="cat.jpg" class="wid180he50" alt="猫" /> 外部ファイルで・・・ .wid180he50 {width=180px ; height=50px ;} とすれば180×50で表示されますが、 <!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では無効となっているようで、そのままの800×800で表示されてしまいます。 どのように記述すれば180×50で表示されますでしょうか?

  • DOCTYPE宣言は厳密に気にするべきか??

    現在WEBを独学で学んでおります。 そこでDOCTYPE宣言についていくつか疑問に思いました。 ひとつでもわかる方はご回答頂ければ幸いです。 1.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> と、ソースの頭に記述しておいて <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> の内容で記述(XHTML 1.0 Transitionalで記述)することは可能ですか?? つまり、HTML 4.01 Transitionalを宣言して終了タグなど、XHTML 1.0 Transitionalの方式で書いても正確に表示されるかを知りたく思って おります。 2.DOCTYPE宣言を書いてないサイトが多く見受けられますが、 この場合はどのようにDOCTYPE宣言と捉えられるのでしょうか? また、この場合のデメリットとかはありますでしょうか?? 以上、わかる方いましたらよろしくお願いいたします。

    • ベストアンサー
    • HTML
  • スタイルシートが時々適用されない ZendFw

    xampp、ZendFrameworkという環境で開発しています。 適用されているスタイルシートが何かの拍子で適用されなくなります。 Frameworkの性であるかどうか、多分関係あるとは思うのですが、原因が全く分かりません。 cssの適用方法ですが、login画面以外はlayout.phtmlというレイアウトを作成し、そこで適用しています。 なので、共通のレイアウトが読み込まれている認識でいます。 症状としては、 (1) login -> index -> user/index -> user/list と遷移するとuser/listでいきなりcssが適用されなくなります。 (2) loginでエラーを出すとやはりcssが適用されなくなります。 (3) user/indexとuser/listは同じコントローラなのでレイアウト適用に関する記述は共通のinitを見ています (4) indexもuser/indexもuser/listも、レイアウト崩れの違いはあってもhtml部分は同様に表示されています (5) cssを読み込んでいる部分のソースもindex・user/index・user/listで全く同じです ちなみにこんな感じ <!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"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> <meta name="keywords" content="" /> <meta name="description" content="" /> <title>****</title> <link href="css/****.css" media="screen" rel="stylesheet" type="text/css" ><script type="text/x-jquery-tmpl"> </head> どなたか、わかる方がいたら教えてください。

    • 締切済み
    • PHP
  • スタイルシート

    スタイルシートを使用していたときに、cssのしたにxhtml を記述する、という形式で記述していたのですが、求めていた書式葉、反映されたんですが、css自体も表示されてしまいました。 どうすればいいのでしょう。

  • 推奨するHTMLの基本骨格

    まだ、HTMLのタグも知らない初心者です。 通常、基本骨格というとhtml・head・body要素からなりますが、推奨されているような基本骨格というのはどういうものでしょうか? 自分なりに調べてみると、 ---------------------------------------------------------------- HTML4.01Strictの場合 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="言語コード">「*1」 <head> <meta http-equiv="Content-Type" content="MIMEタイプ;charset=文字エンコード">「*2」 </head> <body> </body> </html> *1:要素内に使用している「言語コード」の言語を宣言(サーチエンジンのロボットに何語で書かれているか判別できる、文字化け防止) *2:文書を読み込むときに文書形式は「MIMEタイプ」、記述されている文字コードは「文字エンコード」という情報を、ユーザーエージェントに与える(文字化け防止) 言語コード:ja(日本語) MIMEタイプ:text/html(HTML4.01ではHTML文書としては、「text/html」以外のMIMEタイプの使用を禁止している) 文字エンコード:Shift_JIS(WindowsやMacでは「Shift_JIS」が主流) ---------------------------------------------------------------- XHTML1.0Strictの場合 <?xml version="1.0" encoding="文字エンコード" standalone="no"?>「*3」 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="言語コード" lang="言語コード">「*4」 <head> <meta http-equiv="Content-Type" content="MIMEタイプ; charset=文字エンコード" />「*5」 </head> <body> </body> </html> *3:スタンドアロン宣言はこの文書以外に参照すべきDTDがあるかどうかを指定するもので、XHTMLではどのバージョンでも「no」でよい。 *4:XHTML1.0では、XHTMLの環境に対応していないことへの配慮として、lang属性とxml:lang属性の両方を指定する。 *5:「*2」と同様。 言語コード:ja(日本語) MIMEタイプ:text/html(XHTMLの「MIMEタイプ」で推奨されているのは「application/xhtml+xml」だが、IE7でも対応し切れていないので、MIMEタイプは「text/html」にするしかない) 文字エンコード:Shift_JIS(WindowsやMacでは「Shift_JIS」が主流) ---------------------------------------------------------------- XHTML1.1の場合 <?xml version="1.0" encoding="文字エンコード" standalone="no"?>「*6」 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="言語コード">「*7」 <head> <meta http-equiv="Content-Type" content="MIMEタイプ; charset=文字エンコード" />「*8」 <title></title>「*9」 </head> <body> </body> </html> *6:「*3」と同様。 *7:lang属性はXHTML1.1では、後方互換の指定は全て非推奨のため記述できない。 *8:http-equiv属性はXHTML1.1では、HTML互換のため非推奨。 *9:head要素の中には、文書の題名を表すtitle要素が一つ現れなければならないので記述しなければならない。 言語コード:ja(日本語) MIMEタイプ:text/html(XHTMLの「MIMEタイプ」で推奨されているのは「application/xhtml+xml」だが、IE7でも対応し切れていないので、MIMEタイプは「text/html」にするしかない) 文字エンコード:Shift_JIS(WindowsやMacでは「Shift_JIS」が主流) ---------------------------------------------------------------- となりました。 また、XHTMLのMIMEタイプでXHTMLであってもブラウザが対応してないため「application/xhtml+xml」にはできないとありましたが、「application/xhtml+xml」が好ましいと書いてあるサイトもあって「text/html」とどちらが正しいのか分かりません。 また、「*8」は非推奨となっていますが、このmeta要素の部分の記述をしているところもあるので記述するのかしないのかはっきり分かりません。 この「推奨する基本骨格のHTML書式」(この言葉が妥当かは分かりませんが)に修正や追加するものがあったら教えてください。 回答よろしくお願いします。

    • ベストアンサー
    • HTML
  • CSSでの中央寄せにかんする疑問

    .main { margin:0 auto; width:1000px; } とCSSファイルに記述することにより中央よせをしようとしています。 IE8以外のブラウザでは中央に寄るのですが、IE8では実現しません。 実はこのCSSの記述は私が以前作成したサイトからコピーしていて、そのサイトではすべてのブラウザで中央に寄っています。 今回作成したサイトではこのようなトラブルに陥りました。 で、苦し紛れでDOCTYPE宣言を <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> から <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> に変更したらIE8でも中央に寄りました。 なぜ、このようなことになったのでしょうか? 教えてください。 よろしくお願いします。(Apacheのバージョンとかがかかわっている?)

    • ベストアンサー
    • HTML
  • 携帯サイト用 XHTML doctype宣言

    今、携帯サイトでXHTMLを使用したサイトを作成すること考えています。 3つのキャリアを別々に作るのは趣味範囲では難しいため、3つのキャリアに対応しているサイトの作成を考えています。 そこでdoctype宣言についてご質問なのですが、3つのキャリアは別々の宣言があり、 Docomoなら <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/*.*) 1.0//EN" "i-xhtml_4ja_10.dtd"> SoftBankなら <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//J-PHONE//DTD XHTML Basic 1.0 Plus//EN" "xhtml-basic10-plus.dtd"> auなら <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//OPENWAVE//DTD XHTML 1.0//EN" "http://www.openwave.com/DTD/xhtml-basic.dtd"> とあります。 これらの宣言を記述するとキャリアごとにサイトを作成しないといけないため、3キャリア共通の宣言をご教授いただけないでしょうか? また、ないのであればこれらをXMLファイルに書き込みhtmlファイル内の記述でXMLファイルを読み込むことは可能でしょうか? 可能なのであればその際の記述方法をご教授いただけないでしょうか? 宜しくお願い致します。