• ベストアンサー

html宣言文同じサイト内に数種類混在さても問題ありませんか?

現在、サイトを制作する際にDreamWeaverを使用し、htmlの宣言文xhtml 1.0 strictをデフォルトにしていますが、スクリプトエラーが出ます。そこで、xhtml 1.0 transitionalに変更すると直ったりします。 そこで質問なのですが、ページごとに宣言文(htmlのversion)を変えて、1つのサイトで複数の宣言文(htmlのversion)を混在させる際のデメリットを教えて頂きたく思います。有識者の方々のご教授をお待ちしております。

  • HTML
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • abril
  • ベストアンサー率69% (388/560)
回答No.3

> htmlの宣言文xhtml 1.0 strictをデフォルトにしていますが、スクリプトエラーが出ます。そこで、xhtml 1.0 transitionalに変更すると直ったりします。 (自分の経験の範囲では)大概の事はStrictでも支障なく対処できるので、Strictに相応しいコーディングができていないのかもしれませんね。であればそれが身に付くまで全てTransitionalで統一された方が宜しいかも、です。 > ページごとに宣言文(htmlのversion)を変えて、1つのサイトで複数の宣言文(htmlのversion)を混在させる際のデメリット 「その要素を使う為にはそのDTD宣言でなければできない」という場合のみ、やむを得ず混在させる事もありますが。 例えばフレームを使用する場合、フレーム構造そのもののファイルと、フレームの中に実際に表示させるファイルとではDTD宣言が変わるのは必須ですし。 また、文書内に<iframe>タグを含めたファイルの場合もXHTML1.0 StrictやXHTML1.1では非推奨となってしまうのでXHTML1.0 Transitionalで記述せざるを得ません(個人的にはどちらも極力使用しませんが、クライアントの要望によってはその限りでもないので…)。 しかし、他の回答者様も仰っている通り、DTD宣言を変えることでCSSの解釈に違いが出る場合があります。混在して使用する場合は、そこの差異を認識した上でそれぞれのDTD宣言でも支障がでない様に、どのファイルにも汎用で使っている様なスタイルに関してはCSS側の記述を書き換えたり振り分けたりする必要が出てくる場合がある、ということです。 ただ、メンテナンスの手間や混乱を避けるという事を考慮すると、やはりできるだけサイト内は同一のDTD宣言がされている事が望ましいのではないかと思いますので。

sea-bass
質問者

お礼

ご回答いただき、有難うございました。 他の有識者の方々の内容をまとめ、さらに追加情報を付加して頂いた回答と認識させて頂き、感謝しております。

その他の回答 (2)

回答No.2

まずは各宣言の違いについて勉強されるといいと思います。 それが直接この質問の回答にもなると思います。 簡単にではありますが、strictとtransitionalの違いを記述させていただきます。 Strict 厳格なHTMLであることを宣言しています。 HTML4.01で非推奨とされているタグは使用できず、また、その文書構造も「厳格」です。 Transitional 非推奨タグの使用や、HTMLによるレイアウトについてもある程度許されています。 質問者様の場合、細かい原因はわかりませんが、制作されたページの文章構造が「厳格」でなかった事が原因なのではないでしょうか? 複数の宣言が混在する事のデメリットとしては、ページによって頭を切り替えて制作しなければならない点です。 多分なにかしら問題が起きた時にパニックになりそうな気がします。 現在のwww上ではTransitionalが最も主流ですので、まずはこれから勉強された方が楽です。 お仕事などの都合でどうしてもstrictで作らなければならないのであれば、まずはHTMLの正確な文章構造を学ばれる事をおすすめします。 参考になれば幸いです。

  • higekuman
  • ベストアンサー率19% (195/979)
回答No.1

あくまでも可能性の話ですが、ブラウザによっては、同じcssでも、バージョンによってレンダリングが変わるかもしれません。

関連するQ&A

  • XHTMLの宣言文についてネットで調べても使い方がよくわかりませんでし

    XHTMLの宣言文についてネットで調べても使い方がよくわかりませんでした。 以下のXHTMLの宣言文について教えて下さい。 「XHTML 1.0 Strict」はどういう時に記述するんでしょうか? 「XHTML 1.0 Transitional」はどういう時に記述するんでしょうか? 「XHTML 1.0 Frameset」はどういう時に記述するんでしょうか? 「XHTML 1.1」はどういう時に記述するんでしょうか? 「XHTML Basic」はどういう時に記述するんでしょうか? すみませんが説明していただけませんでしょうか。 宜しくお願いします。

    • ベストアンサー
    • HTML
  • strict, transitional の混在

    XHTML1.0 Strict とtransitionalを一つのサイトで混在させても問題ないのでしょうか? 見た目等はまったく問題ないのですが、W3Cは推奨してないとか?? strictで書いていたのですが、PHPとフォームを外部に委託したところ、推奨してない属性とかが使われてしまわれているので、そのページのみtransitionalにしたいのですが。(他のページはstrict) だったら、全部transitionalにしてしまったほうがいいのですかねー? 教えてください。

    • ベストアンサー
    • HTML
  • Dreamweaverのデフォルトを変更したい

    Dreamweaverでhtmlドキュメントを新規に作成、かつ、XHTML準拠させると、 <!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"> という宣言も自動で作成されますが、このデフォルト宣言をStrictにしたいのですが、どこでどのような操作をしたらよいのでしょうか? ご存知の方、お願いします。

    • ベストアンサー
    • HTML
  • 人気上位サイトがTransitionalの理由?

    日本の人気上位サイトは、ほとんどが「HTML 4.01 Transitional」か「XHTML 1.0 Transitional」で作られています。 これには理由があるのでしょうか?なぜXHTML 1.1やStrictを使わないのでしょうか? また、Transitionalを使うのは「アフィリエイトや広告などが非推奨タグを使っているため」と書いているサイトがありましたがこれもTransitionalを使う理由の一つなのでしょうか? Yahoo!JAPAN →→→ HTML 4.01 Transitional http://www.yahoo.co.jp/ goo →→→ HTML 4.01 Transitional http://www.goo.ne.jp/ Dreamweaver →→→ XHTML 1.0 Transitional http://www.adobe.com/jp/products/dreamweaver.html fc2 →→→ XHTML 1.0 Transitional http://fc2.com/ 楽天 →→→ HTML 4.01 Transitional http://www.rakuten.co.jp/ Livedoo r→→→ XHTML 1.0 Transitional http://www.livedoor.com/ Wikipedia →→→ XHTML 1.0 Transitional http://ja.wikipedia.org/ ニコニコ →→→ HTML 4.01 Transitional http://www.nicovideo.jp/ Microsoft →→→ XHTML 1.0 Transitional http://www.microsoft.com/ja-jp/default.aspx

    • ベストアンサー
    • HTML
  • 教えてください。ホームページを作っているのですが、宣言文を入れると、中

    教えてください。ホームページを作っているのですが、宣言文を入れると、中央に配置できなくなります。 これはどうすればよいのでしょうか?? <?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" xml:lang="ja" lang="ja"> <head>

  • 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
  • 宣言とcssの関係

    こんばんは。 ご存知の方いらっしゃいましたら教えてください。 サイトを <!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>・・・・・・・・・・・・ こういった書き出しで書き始め、フルCSSサイトを作ってみました。出来上がりしばらくしてから、文法上では <?xml version="1.0" encoding="Shift_JIS"?> こういった宣言も入れたほうがいいことを知り、一行目に追記したところ表示がずれてしまいました。ちなみにhtml4.01の宣言に変えてもずれてしまいます。 これはどうしてでしょうか。 お分かりでしたら教えてください!よろしくおねがいします。

    • ベストアンサー
    • HTML
  • xhtmlのstrictモードについて

    CSSを使用しています。 今まではhtmlでコーディングしていましたが、使わない方がよいとされる要素や属性を一切しようしていないため、xhtmlのstrictモードの宣言もできると思うんですが、それには何か欠点があるのでしょうか? Transitionalモードのソースはよく見かけますが、strictはなかなか見かけないのでまだ不具合があったりするのかと疑問です。 今xhtmlのweb制作切り替えるのはどんなリスクがあるのか教えてください。お願いします。

    • ベストアンサー
    • HTML
  • DOCTYPE宣言文について

    html・xhtml&cssを勉強している初心者です。約2週間位前から同じ宣言文でソースを入力していたところ、以前と同じ宣言文で打ってるにも関わらずcssのソースどうりいかなくなりました。宣言文を消去するとソースどうりに出来ます。PC DEPOTの方に問い合わせしたところ、HTML4がHTML5に自動的にバージョンアップしてのが原因で打つ手がないとの事でした。 どなたか解決の方法をご存じでしたら是非お教え下さい。よろしくお願い致します。

  • 携帯サイト用 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ファイルを読み込むことは可能でしょうか? 可能なのであればその際の記述方法をご教授いただけないでしょうか? 宜しくお願い致します。

専門家に質問してみよう