Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

un ul dans un p c'est interdit ?

2 réponses
Avatar
Une Bévue
mon code html :
<div class='form'>
<p><select id='select_albums'></select></p>
<p>
<select id='select_persons'></select>
<ul id='ul_persons'></ul>
</p>
<p><select id='select_locations'></select></p>
<p><button id='button_save'>Enregistrer</button></p>
</div>

ça c'est dans le fichier source tel que lu dans l'éditeur de texte.

maintenant si je regarde à :
Menu Contextuel > Inspecter l'élément > Elements, j'ai :
<div class="form">
<p>
<select id="select_albums">
<snippé toutes les options />
</select>
</p>
<p>
<select id="select_persons">
<snippé toutes les options />
</select>
</p>
<ul id="ul_persons">
<snippé les li/>
</ul>
<p></p>
<p><select id="select_locations">
<snippé toutes les options />
</select>
</p>
<p><button id="button_save">Enregistrer</button></p>
</div>

c-à-d que l'ul est sorti du p qui aurait du contenir le select et l'ul.
en simplifiant au mac, au lieu d'avoir :
<p>
<select>
<ul>
</p>

j'ai *** à l'inspecteur *** ce qui ne signifie peut-être pas grand chose :

<p>
<select>
</p>
<ul>
<p></p> (vide)

???

2 réponses

Avatar
Olivier Miakinen
Le 20/10/2014 11:56, Une Bévue a écrit :
un ul dans un p c'est interdit ?



Oui.

Cf. la norme (HTML 4.01, en anglais ou en français) :
http://www.w3.org/TR/html401/sgml/dtd.html
http://www.la-grange.net/w3c/html4.01/sgml/dtd.html

Un paragraphe ne contient que des éléments de type inline :
<!ELEMENT P - O (%inline;)* -- paragraphe -->

Or un UL est de type list, qui est un sous-type du type block :
<!ENTITY % list "UL | OL">
<!ENTITY % block
"P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">

Si tu veux, tu peux mettre un UL dans un DIV, mais pas dans un P.

Cordialement,
--
Olivier Miakinen
Avatar
Une Bévue
Le 20/10/14 14:30, Olivier Miakinen a écrit :
Oui.

Cf. la norme (HTML 4.01, en anglais ou en français) :
http://www.w3.org/TR/html401/sgml/dtd.html
http://www.la-grange.net/w3c/html4.01/sgml/dtd.html

Un paragraphe ne contient que des éléments de type inline :
<!ELEMENT P - O (%inline;)* -- paragraphe -->

Or un UL est de type list, qui est un sous-type du type block :
<!ENTITY % list "UL | OL">
<!ENTITY % block
"P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">

Si tu veux, tu peux mettre un UL dans un DIV, mais pas dans un P.



OK, merci beaucoup, c'est ce que je ferai.

Cordialement.