2011-03-15 3 views
2

Firefox에서 이상한 동작이 발생했습니다. 나는 동적으로 생성 된 텍스트를 가지고 있는데, post 메소드를 통해 매개 변수를 전달할 수 있도록 링크를 포함한 양식 요소를 삽입했습니다. 이상적으로는 텍스트와 함께 흐르고 정상 앵커처럼 보일 것입니다. 그러나 IE에서는 정상적으로 표시되지만 Firefox는 원하지 않는 줄 바꿈을 삽입하는 양식 바로 앞에 단락을 종료합니다. 왜 이런 일이 발생하고 해결 방법/대체 솔루션이 있는지 생각하는 사람이 있습니까? IE에서양식을 포함 할 때 html 단락 태그가 자동으로 닫힙니다.

결과 (확인) :

<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>** 

결과 파이어 폭스에서 (KO) : 그것은 지극히 정상적인하는 P 태그는 인라인을 포함 할 수있어

답변

4

사전에

<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> 

감사합니다 요소의 경우는 양식의 경우가 아닙니다. (http://www.w3.org/TR/html401/struct/text.html#h-9.3 참조)

HTML4 스펙을 사용하면 태그를 닫지 않아도되므로 Firefox는 양식 시작 전에 P 태그를 닫지 않았다고 가정하므로 Firebug로 DOM을 검사 할 때 볼 수있는 닫기 태그가 예.

+0

빠른 답장을 보내 주셔서 감사합니다. 그렇다면 IE가 잘못됐다고 말할 수 있습니까? 어떻게 내가이 문제를 해결할 수 있을지 생각해? "display : inline"에 결과가 없습니까? – Argoron

+1

@Argo : 해결 방법 :'p' 태그를 사용하지 마십시오. 대신에'div'를 시도하십시오. – thirtydot

+2

예, IE가 잘못되었습니다. 단락을 양식 안에 넣으십시오 (링크를 사용하여 스타일을 지정하는 제출 버튼을 사용하십시오. 상단에 일부 JS와의 부러진 링크가 아닙니다). 요소가 * 표시되는 방식 *은 * 변경되지 않으므로 HTML에서 허용되는 위치가 변경되지 않습니다. – Quentin

관련 문제