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 :

Mettre 3 points de suspension en fin de ligne lorsque le contenu est trop long


Sujet :

Tableau en CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2017
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Janvier 2017
    Messages : 23
    Par défaut Mettre 3 points de suspension en fin de ligne lorsque le contenu est trop long
    Bonjour,

    Comme indiqué en intitulé, je cherche à abréger un texte s'il dépasse du conteneur et mettre 3 points de suspension en fin de ligne.
    Il m'a semblé que cela se faisait par
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    text-overflow: ellipsis;
    et qu'il fallait aussi utiliser avec cette propriété
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    white-space: nowrap;
    overflow: hidden;
    Ca paraissait simple, pourtant je n'arrive pas à mettre cela en pratique.
    Je vous mets 2 captures d'écran:
    Nom : Sans titre-1.jpg
Affichages : 211
Taille : 254,2 Ko
    Nom : Sans titre-2.jpg
Affichages : 201
Taille : 256,1 Ko
    Est-ce que vous verriez ce qui cloche?

    Si vous souhaitez le code complet, il se trouve sur github à l'adresse https://github.com/christophe-simon/ohmyfood sur la branche transitions.

    En résumé, on a ceci:
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    .menu-item {
        display: flex;
        margin-bottom: 20px;
        border-radius: 20px;
        padding: 20px;
        background-color: $color-background-main-secondary;
        box-shadow: 1px 1px 8px $shadow-color;
        overflow: hidden;
        &:hover {
            cursor: pointer;
            > .menu-item__checked {
                width: 60px;
                transform: scaleX(1);
                i {
                    transform: rotate(0deg) translateX(0);
                }
            }
        }
        &__description {
            flex: 1;
            > div {
                display: flex;
            }
            &__name {
                font-family: 'Roboto', sans-serif;
                margin: 0 0 14px 0;
                text-overflow: ellipsis;
                white-space: nowrap;
                overflow: hidden;
            }
            &__additional-information {
                margin: 0;
                flex: 1;
                text-overflow: ellipsis;
                white-space: nowrap;
                overflow: hidden;
            }
            &__price {
                margin: 0;
                width: 30px;
                text-align: right;
                font-weight: bold;
            }
        }
        &__checked {
            display:flex;
            align-items:center;
            justify-content:center;
            width: 0;
            background-color: $color-tertiary;
            color: $color-background-main-primary;
            margin: -20px -20px -20px 20px;
            border-radius: 0 20px 20px 0;
            transform-origin: right;
            transform: scaleX(0);
            transition: transform 700ms ease-in-out;
            i {
                display: inline-block;
                font-size: nth($font-size, 2);
                transform: rotate(-90deg) translateX(60px);
                transition: transform 700ms ease-in-out;
            }
        }
    }

    Sur la capture d'écran numéro 1, on a le texte de .menu-item__description__additional-information qui va à la ligne automatiquement.
    L'affichage est bon, sauf qu'on veut qu'une seule ligne.
    On ajoute donc nos 3 lignes de code... et là, on ne va plus à la ligne, du fait de la propriété white-space: nowrap;...
    On ne dépasse pas du conteneur du fait de overflow: hidden;
    Mais cependant le conteneur augmente de taille et on ne met jamais les "..." (capture 2)

    Est-ce que vous verriez ce qui cloche dans mon code? ... pourquoi le contenteur .menu-item__description__additional-information augmente désormais de taille?


    -----------------------------------
    Edit:

    Ok... On m'a donné la solution sur discord...
    Apparemment un bloc qui pousse un autre a besoin de connaitre la taille du bloc qu'il pousse.
    Du coup il faut mettre par exemple
    au bloc .menu-item__description

    Problème solutionné!

  2. #2
    Membre chevronné Avatar de Gaulouis
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2015
    Messages : 252
    Par défaut
    Salut,

    text-overflow: ellipsis; semble ne pas fonctionner avec un display: flex;En utilisant display:inline-block; ca semble fonctionner.

    Cdlt,

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/07/2016, 17h51
  2. Comment mettre des point d'arrêt
    Par Claude l'ancien dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/06/2006, 11h58
  3. requte avec points de suspension
    Par Luther13 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 08/12/2005, 16h56
  4. LEFT et points de suspension
    Par dany13 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 22/08/2005, 18h30

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