167 votes

Un espace entre les éléments de liste Inline-Block

Double Possible:
Indésirables de la marge en inline-block éléments de la liste
Comment faire pour supprimer "l'Invisible de l'espace" de l'HTML

Pourquoi les inline-block éléments de la liste ont un espace? Peu importe comment je fais ma liste d'éléments dans un menu, je reçois toujours des espaces.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>Weird Lists</title>
        <style type="text/css">
            li {
                border: 1px solid black;
                display: inline-block;
                height: 25px;
                list-style-type: none;
                text-align: center;
                width: 50px;
            }
            ul {
                padding: 0;
            }
        </style>
    </head>

    <body>
        <ul>
            <li>One</li>
            <li>Two</li>
            <li>Three</li>
        </ul>
    </body>
</html>

246voto

Kyle Sevenoaks Points 29929

Je l'ai vu et répondu avant:

Après d'autres recherches , j'ai découvert qu' inline-block est un les espaces dépendant de la méthode et dépend de la police de caractères. Dans ce cas 4px est rendu.

Pour éviter cela, vous pourriez courir votre lis ensemble dans une ligne ou un bloc les balises de fin et de commencer les marques comme ceci:

<ul>
        <li>
            <div>first</div>
        </li><li>
            <div>first</div>
        </li><li>
            <div>first</div>
        </li><li>
            <div>first</div>
        </li>
</ul>

Exemple ici.

167voto

David Horák Points 2622

Solution :

Vous devez définir la taille de police parent à 0

18voto

Trevor G Points 147

Je voudrais ajouter la propriété CSS du flotteur gauche comme indiqué ci-dessous. Qui se débarrasse de l’espace supplémentaire.

18voto

Gerbus Points 799

En fait, ce n’est pas spécifique à , mais s’applique également aux . Ainsi, en plus de la solution de David Horák, cela fonctionne aussi :

1voto

Mya Points 49

Il suffit de supprimer les pauses entre les li dans votre code html code... faire le li d’en une seule ligne...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X