2009-03-02 7 views
0

次のHTMLに何か問題がありますか、単にFirebugエラーが発生していますか? Firebugの最初のリスト要素を見ると、firebugがアンカーを正しく識別するのが難しいことがわかります。ただし、2番目(外側)のリスト要素には問題ありません。最初のリスト要素からネストされたリストを削除すると、問題は消えます。同様に、外側のリストを削除すると、問題は消えます。したがって、ネストされたリストの周りにアンカーを配置することに問題があるようです。ネストされたリストのアンカーが無効か、これはファイアウォールのエラーですか?

私はアンカーをdiv、さらにはスパンで置き換えようとしましたが、firebugは文句を言わないので、アンカー固有のようです。私も様々なdoctypesを試してきましたが、成功はありませんでした。

<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    </head> 
    <body> 
    <ul> 
     <li> 
     <a href="http://whatever" style="display:block"> 
      <p>some text</p> 
      <ul> 
      <li>a list entry</li> 
      </ul> 
     </a> 
     </li> 
     <li> 
     <a href="http://whatever"> 
      <p>more text</p> 
     </a> 
     </li> 
    </ul> 
    </body> 
</html> 

答えて

1

a要素は子要素としてinline-level elementsことができます。したがって、p要素とul要素は許可されていません。

+0

私はこれが問題かどうか疑問に思いました。そうであれば、いくつかの矛盾があります(アンカーをスパンで置き換えるとどうして問題ありませんか?そして、インラインに設定されたディスプレイでdivの内容をラップするとまだ問題はありますか?) – darasd

+0

@darasdスパンはインライン要素なので、display:inlineに設定されるdivもそうです。 @Bartは正確に –

+0

です。最初のケース(アンカーをspanで置き換える)では、ブロック要素を含むインライン要素がありますが、問題はありません。第2の場所(インラインdivのアンカーの内容を囲む)では、インライン要素を含むアンカーがありますが、問題はまだ存在します。 – darasd

関連する問題