• ベストアンサー

エラーの意味がわかりません

自分のサイトを文法チェックサイトでチェックしました。 http://openlab.ring.gr.jp/k16/htmllint/htmllint.html 意味や修正方法がわからないものがあるので正しい記述方法を教えていただけないでしょうか。↓ 7: line 120: </EMBED> は Mozilla または MSIE 用のタグです。 1: line 72: <A> の属性 `TARGET` はあまり薦められない属性です。 3: line 109: <OBJECT> には等価な内容を書くようにしましょう。 5: line 151: <TABLE> に Mozilla または MSIE 用の属性 `BORDERCOLOR` が指定されています いいサイトがあれば教えてください。よろしくお願いします。

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

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

> 3: line 109: <OBJECT> には等価な内容を書くようにしましょう。 <object>に対応していないブラウザのための記述をして下さい、ということです。 <img>に対するalt属性みたいな物です。 <object>の中に<embed>を入れ子にして下さい。 ただしAnother HTML-lintでは<embed>に対するエラーが出ると思います。 一般的にはこうなると思います。 <object data=""> <param> <embed src=""> <noembed><img src="" alt="代替"></noembed> </object>

その他の回答 (3)

  • MoonMB
  • ベストアンサー率50% (4/8)
回答No.3

「Another HTML-lint gateway」では、警告の後に、「→ 解説 xxx」というのがあるはずです。 それをクリックすれば、その警告についての詳しい解説が書いてあります。 >7: line 120: </EMBED> は Mozilla または MSIE 用のタグです。 <EMBED>は、多分、音楽を鳴らすためのタグだと思いますが、警告を見る限り、それは、Mozilla(Netscape)と、Microsoft Internet Explorerしか対応していないようです。 ですので、#1の方法を使えばいいのですが・・・。 サイトを開くといきなり音楽を鳴らす方法はあまりお勧めできません。 たとえば、音楽をパソコンで聞きながらネットサーフィンをしている人が、勝手に音楽を鳴らされると、非常に迷惑だからです。 >1: line 72: <A> の属性 `TARGET` はあまり薦められない属性です。 >3: line 109: <OBJECT> には等価な内容を書くようにしましょう。 #2のとおりです。 >5: line 151: <TABLE> に Mozilla または MSIE 用の属性 `BORDERCOLOR` が指定されています これも、Mozilla(Netscape)と、Microsoft Internet Explorerしか対応していないからです。 ということは、Operaなどのブラウザでは、それが無視されてしまいます。

noname#23734
noname#23734
回答No.2

予想ですが 7: line 120: W3CのDTDでは!ENTITYや!ELEMENTでEMBEDが書かれていないからブラウザが勝手に拡張したタグなんじゃない? だから減点しますよ。 No1の方の回答で減点されないと思います。 1: line 72: HTML 4.01 Transitional ,XHTML 1.0 Transitional では`TARGET` は使えますが、このバージョンってW3Cが段階的に削除することが予想されるタグや属性を含んでいます。 その中に`TARGET`が入っていますよ。 でもDOCTYPE宣言の公開識別子を"-//W3C//DTD HTML 4.01 Transitional//EN"にしたら減点はしませんよ。 解決策の答えはここにhttp://openlab.ring.gr.jp/k16/htmllint/faq.html書かれています。 3: line 109: <OBJECT> には等価な内容を書くようにしましょう。 内容モデルもこうなっていますので <!ELEMENT OBJECT - - (PARAM | %flow;)* -- generic embedded object --> ソースを見てみないとこれはちょっと想像できません。(これを出した経験がありません) 5: line 151: W3CのDTDでは、TABLE の!ATTLISTに`BORDERCOLOR` が書かれていないからブラウザが勝手に拡張した属性なんじゃない? だから減点しますよ。 td{border-color:red}のようにスタイルシートを使うと減点を避けられます。 こんなことが言いたいと思います。

  • 345itati
  • ベストアンサー率48% (795/1639)
回答No.1

htmllintはちょっと厳しすぎるきらいがあるので・・・ 動画や音声を埋め込む<embed>ですが、本来は<object>で埋め込むようにしろっていうのが一応は正しいんです。でも、今の所<embed>を削除して<object>のみで埋め込んでしまうと再生出来ないブラウザがかなり出てきます。だから、このエラーは甘んじて受けるしか無いかと。。。 文法的にガチガチに正しい記述をしても、ブラウザ側で対応出来ないという為に、修正したら反対に表示出来なくなる、というのは本末転倒ですので。 (確かに対応出来ていないブラウザが悪いとは言えますが ・・・つまり、そのチェッカーで満点を取る事にはさほど意味は無いという事です。 どっちかといえば、W3Cのチェッカーのほうがまだ緩いかもしれません。 →http://validator.w3.org/ CSSはこっちで →http://jigsaw.w3.org/css-validator/

noname#27371
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう