Wenn Sie <div> in <p> einfügen, wird ein zusätzliches <p> [Duplikat] hinzugefügt.

Diese Frage hat hier bereits eine Antwort:

Warum darf das <p> -Tag kein <div> -Tag enthalten? 5 Antworten

Vonhttp://webdesign.about.com/od/htmltags/p/aadivtag.htm

In HTML 4 kann sich das DIV-Element nicht in einem anderen Element auf Blockebene befinden, wie z. B. einem P-Element. In HTML5 befindet sich das DIV-Element jedoch im Inneren und kann andere Flow-Inhaltselemente wie P und DIV enthalten.

Ich habe so etwas in einem Formular

<p> <label...> <input...> </p>

Aber wenn Rails automatisch ein error_explanation-Div generiert, das die Eingabe umschließt, wird der eine Absatz in zwei umgewandelt, und ich sehe dies in Firebug:

<p> <label...> </p> <div...> <input...> </div> <p> </p>

Auch wenn ich nur ein einfaches hinzufüge

<p> <div> test </div> </p>

dasselbe Problem tritt auf (JSFiddle) und es wird im DOM als gerendert

<p> </p> <div> test </div> <p> </p>

Warum?

Aktualisieren: Ich habe der Autorin des Artikels eine E-Mail geschickt, und sie hat die entsprechenden Änderungen vorgenommen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage