2016-12-01 4 views
0

J'ai défini la propriété CSS <li> sur hidden, puis sa puce/numéro a été supprimé. Pourquoi? Quelle est leur relation? (? Comment puis-je le corriger)Pourquoi overflow-y: caché des listes HTML rend la puce/numéro invisible?

est ici un simple échantillon (En ce qui concerne @Paulie_D answer, j'ai ajouté overflow-x:visible):

li:first-child { 
 
    overflow-y:hidden; 
 
    overflow-x:visible; 
 
}
<ul> 
 
    <li>Unordered list - Item 1</li> 
 
    <li>Unordered list - Item 2</li> 
 
</ul> 
 
<ol> 
 
    <li>Ordered list - Item 1</li> 
 
    <li>Ordered list - Item 2</li> 
 
</ol>

je l'ai couru sur Firefox et v49.x Chrome v54.x.


EDIT: En raison de quelques réponses, j'explique:

enter image description here

Puces/numéros sont en dehors des limites du terrain x, pas y-limites!

Répondre

1

De ma lecture, lorsque vous définissez overflow-y:hidden la overflow-xcalculée valeur est définie sur auto qui fait partie de la CSS Spec .

Valeur calculée: comme spécifié, sauf si le calcul visible est automatique si l'un des paramètres overflow-x ou overflow-y n'est pas visible.

... et overflow:auto

Cette valeur indique que le contenu de la boîte est clipsé à la boîte de remplissage.

..et puisque le marqueur est en dehors du li, il est écrêté et masqué.

+0

Merci pour votre information utile. En ce qui concerne votre réponse, j'ai mis à jour ma question. –

+0

Peu importe si vous ajoutez 'overflow-x: visible' il reviendra à' auto' –

+0

J'ai donc accepté votre réponse, mais maintenant ma question est ** comment la corriger? ** –

1

Les puces sont en dehors de par défaut, alors overflow-y:hidden; les cache. Vous pouvez utiliser list-style-position: inside; pour remplacer la valeur outside par défaut.

Je le sais; mais ils sont en dehors des frontières x, pas de frontières y!

Vérifiez cette image:

enter image description here

La boîte bleue est la zone de délimitation de l'élément de liste. L'espace avant les éléments de la liste est le remplissage par défaut des éléments parents ul et ol. Donc, les balles sont en dehors de des éléments de la liste.

+0

Je le sais; mais ils sont en dehors des frontières x, pas de frontières y! –

+0

... Donc les puces sont en dehors des éléments de la liste. Oui, sont dehors. Mais en dehors des frontières x! J'ai mis 'overflow-y' à' hidden'. Je l'ai mieux expliqué dans ma question. –

0

cause de la balle dans la liste à puces ou des numéros dans la liste ordonnée sont quelque chose de plus que la zone de délimitation

+0

Je le sais; mais ils sont en dehors des frontières x, pas de frontières y! –