Por que ele pode definir alturas, mas não se parece com elementos <h1 />, parece que é um elemento semi-inline (embutido: inline [text] -level). HTML 4 é descrito assim:
Os seguintes elementos também podem ser considerados elementos no nível do bloco, pois podem conter elementos no nível do bloco:
Nesta descrição, parece que <li /> é um elemento de meia-linha. Obviamente, os elementos semelhantes a <td /> nesta lista também me trouxeram essas dúvidas. Hoje, dei uma olhada no CSS padrão para cada navegador. O resultado é o seguinte:
| Navegadores | CSS |
|---|---|
| IE6/IE7 | li{display:block; } |
| Ie8+ / webkit / firefox / ópera | li{display:list-item; } |
Aqui, está basicamente claro. No navegador de grau A, exceto o IE6/7, é um elemento de meia escala. Quando se trata de display:list-item; de fato, mesmo que todos os navegadores de grau A agora sejam suportados, muitas pessoas não o usam. Por que? Na verdade, é inútil. No modo Quirks, PPK diz o seguinte:
Exemplo ao vivo: Display: BlockDisplay: List-ItemDisplay: List-Item
display: list-itemsignifica que o elemento é exibido como um item de lista, o que significa principalmente que ele tem uma bala na frente (como um UL), exceto no IE 5 no Mac, onde recebe um número (como um OL). Os números são de buggy: todos os Li anteriores na contagem de páginas como um, então este exemplo começa com o número 5 (a captura de tela foi feita antes de eu inserir minha compatibilidade com LI).
Certo. Na verdade, isso não é muito significativo. Mas também resolveu uma das minhas dúvidas. Compartilhe. Se você tiver essas dúvidas, talvez se tiver bugs ou outras perguntas da próxima vez que codificar, provavelmente poderá reagir rapidamente.