XHTMLの宣言文についてネットで調べても使い方がよくわかりませんでした。
以下のXHTMLの宣言文について教えて下さい。
「XHTML 1.0 Strict」はどういう時に記述するんでしょうか?
「XHTML 1.0 Transitional」はどういう時に記述するんでしょうか?
「XHTML 1.0 Frameset」はどういう時に記述するんでしょうか?
「XHTML 1.1」はどういう時に記述するんでしょうか?
「XHTML Basic」はどういう時に記述するんでしょうか?
すみませんが説明していただけませんでしょうか。
宜しくお願いします。
No.1ベストアンサー
- 回答日時:
ネットで調べても解らなかったという事なので、ぶっちゃけて個人的見解を書きます。
まず、Strict、Transitional、Framesetの違いは簡単です。
・Strictを指定した場合、規則どおりに書かなければならないという事で、非推奨の書き方
は許されません。
・Transitionalは、互換性を考慮して、非推奨の書き方もとりあえず許してくれます。
・Framesetはその名のとおり<framset>、<frame>でページを作る時に指定します。もちろん
xhtmlでは非推奨です。
次に、XHTML 1.0とXHTML 1.1の違いは、いまひとつよくわかりません。
ちなみにXHTML 1.1はそもそも厳格ですから、Transitional、Framesetなんてのは
ありません。XHTML 1.1はモジュール化されていて、DTDをちゃんと書けば、いろんな
XHTMLのサブセットが作れると言われてますが、この辺が具体的に?な所です。
そおいった意味で、XHTML Basicというのはまさに、XHTML 1.1はモジュール化を
使って、携帯端末向けページ用のXHTMLとして定義されたものらしいです。
よって、現状、「XHTML 1.0 Strict」でよい点を取れるように作っておけば無難です。
というより、今後の事も考えるなら、
DOCTYPEはHTML5.0を宣言しておいて、XMLであるのを名乗る
のが、粋じゃないかと...(もちろん中身をXML1.0仕様どおりにしなきゃだめですが)
こんなふうに、
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml" />
......
No.3
- 回答日時:
>XHTMLの宣言文についてネットで調べても使い方がよくわかりませんでした。
・・・【中略】・・・
>????はどういう時に記述するんでしょうか?
どうも大きな誤解をされているようです。
XMLの宣言文、HTMLのDOCTYPEは、元来が「どういうときに記述する」ではなく、【著者が】以下のXML,HTMLをどういう仕様で記述するかの宣言です。
「どういう時に記述する」という受動的なものではなく、「今から記述するマークアップ文書はこの形式を使う」という著者側の宣言です。
あなたが文書形式に、
・XHTML 1.0 Strict、
・XHTML 1.0 Transitional
・XHTML 1.0 Frameset
以上はHTML4.01をXMLに合わせて書き換えたもので基本的にHTML4.01と同じものです。
・XHTML 1.1
・XHTML Basicを選択すれば
XHTMLで非推奨だったものを排除し、モジュール化して必要なものを必要に応じて使えるようにしたもの。基本的にはXHTML1.0と大差はない。
ブラウザ(特にIE)は、XML宣言や、DOCTYPEでどのようにレンダリングするかを判断しますが、それはあくまで旧仕様のHTMLのレンダリングとの後方互換のためで、ブラウザの表示を目的に「どういう時に記述するんでしょうか?」と考えるのは誤りです。
W3Cでは、HTMLは4.01を最後にXHTMLに移行すると一端は決断しましたが、HTMLの長所(私は欠点だと思うが)を継続しようという圧力で、いったんは排除したHTML5の回帰しました。
・XHTMLでは<p>ほげほげ・・<p>ほげほげ・・・<h2>なんたら<h3>なんとか---という簡略化ができたけど、XHTMLでは、<p>ほげほげ・・</p><p>ほげほげ・・・</p><h2>なんたら</h2><h3>なんとか</h3>---と書かなければならない。
簡略表記は著者には楽かもしれないが、ブラウザにはとても大きな負担になる。
とか・・
No.2
- 回答日時:
「XHTMLを使用する」「XHTML5を使用できない」という前提があるとして。
> 「XHTML 1.0 Strict」はどういう時に記述するんでしょうか?
ブラウザ毎のデフォルトCSSの違いで手間をかけたくないとき。
FirefoxのDOCTYPEスイッチで Full Standards モード にスイッチして欲しいとき。
> 「XHTML 1.0 Transitional」はどういう時に記述するんでしょうか?
HTML4.01 Transition からの移行で非推奨要素、非推奨属性などの廃止に時間をかけたくないとき。
FirefoxのDOCTYPEスイッチがAlmost Standards モードにスイッチしても構わないとき。
> 「XHTML 1.0 Frameset」はどういう時に記述するんでしょうか?
フレームを宣言する必要がある時。
というところかな。
クロスブラウザが面倒なので、基本的にStrict一択です。
個人的には、XHTML5に移行したいところですが、クロスブラウザを考えるとXHTML全般において採用しがたいところですね。
厳格なXML構文を使うと、IE8-で対応できません。
・XML宣言を省略したら、外部からXHTMLをXMLとし読み込む際に正しくパースされないかもしれない。
・<style> でCDATAセクションを使うと正しくスタイルを読み込めない。
などIEはいろいろと不便です。
なので、私がXHTMLを使う場合は「IEを無視して構わないとき」というのが大前提になっています。
Mozilla's DOCTYPE sniffing - MDC
https://developer.mozilla.org/ja/Mozilla%27s_DOC …
DOCTYPEスイッチによるレンダリングモード別デフォルトCSSについて - プログラマ 福重 伸太朗 ~基本へ帰ろう~
http://d.hatena.ne.jp/japanrock_pg/20100518/1274 …
hxxk.jp - DOCTYPE スイッチについてのまとめと一覧表 (HTML 5 や IE 8 Beta 2 のモードスイッチなどの情報も含んだ 2008 年版 )
http://hxxk.jp/2008/09/29/0118
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ASP・SaaS FC2 BLOG <AUDIO TAGを入れプレビューはOk テーンプレートを更新すると ✖ 1 2023/08/14 11:40
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- HTML・CSS (Javascript)印刷するファイルに応じて印刷プレビュー画面で用紙を自動的に切り替えたい!! 2 2022/04/11 12:04
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- 英語 描写述語の条件(本来の性質、一時的な属性、又は両方)について 2 2022/07/25 13:41
- メディア・マスコミ 新聞のメリット・デメリットはなんですか? 7 2023/02/01 21:24
- 日本語 離反という熟語について 2 2022/10/06 17:57
- 日本語 宣命体とは何ですか? 猿でも分かるように説明して下さい。 また、Wikipediaには漢字のみで和文 3 2022/07/25 16:27
- 高校 読解力をつけたい 2 2023/06/10 15:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
.htaccessで403error時に表示す...
-
CSSで謎の現象
-
アクセスログの「HEAD」と...
-
グラデーションの仕方
-
数値Lについて
-
FFFTPで「コマンドが受け付けら...
-
<!--nobanner--> かindex.xhtm...
-
アドレスバーへの直接入力を禁...
-
Excelを読み込んでhtmlのテーブ...
-
Apacheのhttp.confの中の設定に...
-
ホームページの更新を知らせる...
-
htmlで改行タグを入れていない...
-
ホームページ作成・転送・アドレス
-
文字(行)が重なる
-
HP作成していますがリンクでき...
-
ホームページビルダーで「phpフ...
-
同じURLなのに古いページが検索...
-
ホームページビルダーで作った...
-
ホームページを左右にわけるタグ
-
「index.html」ページがIE(V.7)...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ログイン機能
-
input[type=text]とinput[type=...
-
CSSで謎の現象
-
ローカルに保存された ASP を I...
-
html,動的?なホームページにつ...
-
matplotlibのax.scatter3D()で...
-
ウェブサイトのスライドショー...
-
CD-Rでのオートラン
-
robots
-
FlashPlayer無しの表示方法
-
ホームページでフッターの表示...
-
VBAでの質問
-
XHTMLの宣言文についてネットで...
-
アクセスログの「HEAD」と...
-
htmlで改行タグを入れていない...
-
大きくなった文字を元に戻すには?
-
ヤフオクの出品説明文をカラー...
-
ドラッグすると見える文字
-
数値Lについて
-
隠しページの探し方
おすすめ情報