Pourquoi il peut définir des hauteurs, mais il ne ressemble pas à des éléments <h1 />, il a l'impression que c'est un élément semi-inline (en ligne: en ligne [texte]. HTML 4 est décrit comme ceci:
Les éléments suivants peuvent également être considérés comme des éléments au niveau du bloc car ils peuvent contenir des éléments au niveau du bloc:
Dans cette description, il semble que <li /> soit un élément à moitié en ligne. Bien sûr, les éléments similaires à <td /> dans cette liste m'ont également apporté de tels doutes. Aujourd'hui, j'ai jeté un coup d'œil au CSS par défaut pour chaque navigateur. Le résultat est le suivant:
| Navigateurs | CSS |
|---|---|
| IE6 / IE7 | li{display:block; } |
| IE8 + / Webkit / Firefox / Opera | li{display:list-item; } |
Ici, c'est fondamentalement clair. Dans le navigateur de qualité A sauf IE6 / 7, c'est un élément à moitié en ligne. En ce qui concerne display:list-item; en fait, même si tous les navigateurs de qualité A sont maintenant pris en charge, peu de gens l'utilisent. Pourquoi? En fait, c'est inutile. En mode Quirks, PPK dit ceci:
Exemple en direct: Affichage: BlockDisplay: list-itemDisplay: list-item
display: list-itemsignifie que l'élément s'affiche en tant que liste de liste, ce qui signifie principalement qu'il a une balle devant lui (comme un UL), sauf dans IE 5 sur Mac où il obtient un nombre (comme un OL). Les nombres sont buggy: tous les Li précédents dans la page comptent comme un, donc cet exemple commence par le numéro 5 (la capture d'écran a été faite avant d'inserter mes compatibilité-lis).
Droite. En fait, ce n'est pas très significatif. Mais cela a également résolu l'un de mes doutes. Partagez-le. Si vous avez de tels doutes, peut-être que si vous avez des bogues ou d'autres questions la prochaine fois que vous codiez, vous pourrez probablement réagir rapidement.