2

Firefox で奇妙な動作に出くわしました。post メソッドを介してパラメーターを渡すことができるように、リンクを含むフォーム要素を挿入した動的に作成されたテキストがあります。理想的には、テキストとともに流れ、通常のアンカーのように見える必要があります。ただし、IE では通常どおり表示されますが、Firefox ではフォームの直前で段落が終了するため、不要な改行が挿入されます。なぜこれが起こるのか、回避策/代替ソリューションを持っている人はいますか?

IE の結果 (ok):

<p class="article" >This is my paragraph and here goes my 
<form style="display: inline" name="link_form" action="link.html" method="post">
<input type="hidden" name="lnk_id" value="1" /><a class="link" href="#" onclick="link_form.submit()">link</a></form>**</p>**

Firefox (ko) での結果:

<p class="article" >This is my paragraph and here goes my**</p>** 
<form style="display: inline" name="link_form" action="link.html" method="post">
<input type="hidden" name="lnk_id" value="1" /><a class="link" href="#" onclick="link_form.submit()">link</a></form>

前もって感謝します

4

1 に答える 1

5

P タグにはインライン要素のみを含めることができますが、これはフォームには当てはまりません。( http://www.w3.org/TR/html401/struct/text.html#h-9.3を参照)

HTML4 仕様ではタグを閉じないことが許可されているため、Firefox は、フォームの開始前に P タグを閉じるのを忘れたと見なします。したがって、たとえば、Firebug で DOM を検査するときに終了タグを確認できます。

于 2011-03-15T13:41:34.630 に答える