IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Span - centrage vertical multilignes


Sujet :

Centrer un élément en CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut Span - centrage vertical multilignes
    Bonjour,
    J’affiche des span qui se suivent en inline-block.
    Certains contiennent une ligne et d’autres deux.
    Ils ont tous la même hauteur donc ceux avec une seule ligne ne sont pas centrés verticalement.
    J’ai vu que l’on pouvait résoudre le problème en insérant un span dans le span et en utilisant display:table pour le span extérieur et display:table-cell pour le span intérieur.
    Ça marche, mais je perds le inline-block. Le display:table place chaque span sur une nouvelle ligne.
    Avez-vous une solution pour centrer verticalement le contenu des span tout en affichant ces span sans retour à la ligne entre chacun d’eux ?
    Merci d’avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Mets le display:table sur le parent (<div>) de tous les <span>.
    Et display:table-cell sur les <span>, en vertical-align:middle.

    Ou avec une flexbox.

  3. #3
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Merci beaucoup
    Mais je veux que mes span :
    - aient tous une même hauteur (par exemple 70px)
    - aient tous une même largeur (par exemple 150px)
    - se suivent sur une ligne (avec saut de ligne lorsqu’il n’y a plus de place pour les span suivants)
    - aient leur texte centré verticalement (quel que soit le nombre de lignes dans chaque span)
    Merci pour ton aide

  4. #4
    Membre extrêmement actif
    Avatar de Sodium
    Femme Profil pro
    Développeuse web
    Inscrit en
    Avril 2014
    Messages
    2 324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeuse web

    Informations forums :
    Inscription : Avril 2014
    Messages : 2 324
    Billets dans le blog
    1
    Par défaut
    Si tu veux juste centrer les span les uns par rapport aux autres, un "vertical-align: middle;" sur les span devrait résoudre le problème.
    Si tu veux en plus qu'ils soient centrés par rapport à leur conteneur, rajouter ça sur le conteneur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    (selecteurContent)::before {
         content: "";
         display: inline-block;
         vertical-align: middle;
         width: 0;
         height: 100%;
    }

  5. #5
    Invité
    Invité(e)
    Par défaut
    Montre-nous tes codes HTML ET CSS.


    On pourra te montrer comment faire.

  6. #6
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Merci
    Mon code, c’est celui que tu m’as conseillé : des span en display:table-cell dans un div en display:table

    Ta solution fonctionne très bien : dans chaque span, le texte est centré verticalement quelque soit le nombre de lignes qu’il prend dans le span.
    Mais cette solution me fait perdre le comportement inline des span, qui se comportent du coup comme les td d’un table

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CR XI] Centrage vertical ?
    Par kikidrome dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 03/11/2007, 20h55
  2. Réponses: 13
    Dernier message: 16/08/2006, 09h06
  3. [HTML] Centrage vertical d'un div
    Par LE NEINDRE dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 25/08/2005, 17h31
  4. [CSS] Problème de centrage vertical
    Par ZeImp dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 20/07/2005, 00h04
  5. Centrage vertical de cellule : est-ce possible ?
    Par kikidrome dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 13/06/2005, 11h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo