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 :

Rendre un tableau responsive - Media queries


Sujet :

Responsive design en CSS

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut Rendre un tableau responsive - Media queries
    Bonjour,

    J’essaye de rendre un tableau html (simple) responsive pour qu’il puisse être adapté aux mobiles car le rendu actuel ne va pas, la plupart des colonnes sont coupées quand on accède au site sur mobile. J’ai donc utilisé les media queries pour que les colonnes soient agencées les unes après les autres (à la verticale). Pour cela j’ai codé cela dans mon fichier css :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    @media (max-width: 600px) {
    .entry-content table, tbody { display: block; }
    .entry-content tr { display: table; }
    .entry-content td { display: table-row; }
    }
    J’ai essayé d’autres codes un peu similaires :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    @media screen and (max-width: 600px) {
    .entry-content table,
    .entry-content table tbody,
    .entry-content table tr,
    .entry-content table td {
      display: block;
    }
    Mais ça ne marche pas, le tableau reste le même qu’en version desktop. Pourtant lorsque je définis une taille d’écran plus large (max-width : 1280px par exemple) le tableau de la version desktop est bien modifié, avec des colonnes agencées à la verticale.

    Que faut-il modifier dans mon code pour que le tableau soit adapté aux mobiles ?

    Merci beaucoup !

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2015
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2015
    Messages : 644
    Points : 1 509
    Points
    1 509
    Par défaut
    Bonjour,

    Je te mets des liens vers plusieurs fiddle, pour la simple et bonne raison que c'est pas une propriété en particulier, mais un tout, une structure HTML et le CSS qui va avec.

    Essaie de te rapprocher de ces exemples :

    - http://jsfiddle.net/secretgspot/eA7hm/
    - http://jsfiddle.net/zinoui/tfc0s2mv/
    - https://jsfiddle.net/hackedd/ZAPzZ/

    En espérant t'aider un peu !
    Un fait toujours plaisir et encourage à l'entraide. Un n'est pas à négliger, pensez aux autres !

    Que la force soit avec Developpez.net
    Je ne suis pas un crack en informatique, loin de là, mais il n'y a pas que les mécaniciens qui sachent conduire une voiture

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Salut,

    Merci bien pour les liens, je vais étudier tout ça !

  4. #4
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Après avoir étudié les liens que tu m'as conseillé, j'ai décidé d'inverser l'orientation de mes tableaux, comme ceci :

    A B C D
    1 2 3 4
    5 6 7 8
    =>
    A15
    B26
    C37
    D48

    et ensuite de figer la première colonne pour que les mobinautes puissent scroller à l'horizontal pour avoir accès aux autres informations en ayant toujours la première colonne à gauche sur leur écran.

    Pour la première étape (inverser l'orientation des tableaux) j'ai trouvé deux codes :
    http://jsfiddle.net/CsgK9/103/
    http://jsfiddle.net/vXS2q/12/
    mais ils nécessitent le recours à un code javascript et je ne sais pas où mettre ce code dans mon site (sur quel fichier, à quel emplacement...).

    Où dois-je ajouter ce code javascript ?

    Merci d'avance !

  5. #5
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2015
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2015
    Messages : 644
    Points : 1 509
    Points
    1 509
    Par défaut
    J'ai du louper quelque chose...

    Les codes javascript qui sont dans ces fiddles, servent à renverser de manière dynamique (quand tu intéragis avec un lien, un bouton) le tableau.

    Sauf que toi, tu veux un tableau responsive. Tu peux très bien laisser ton tableau en ligne, et à partir d'une certaines taille, le faire passer en long.
    Un fait toujours plaisir et encourage à l'entraide. Un n'est pas à négliger, pensez aux autres !

    Que la force soit avec Developpez.net
    Je ne suis pas un crack en informatique, loin de là, mais il n'y a pas que les mécaniciens qui sachent conduire une voiture

  6. #6
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Oups, j'avais mal compris, comment faire alors pour passer les tableaux à la vertical sur mobile ? J'imagine que cela se fait avec les media queries ?

  7. #7
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2015
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2015
    Messages : 644
    Points : 1 509
    Points
    1 509
    Par défaut
    Du Bootstrap peut faire l'affaire pour un tableau responsive : http://v4-alpha.getbootstrap.com/content/tables/

    Cela dit, il sera pas vertical à l'alignement.

    Pour des tableaux, je te conseil le pluggin FooTable, qui est un plugin JQuery facile à mettre en place, ou DataTables, qui eux gèrent le responsive.

    Footable exemple : http://fooplugins.com/footable-demos/
    Un fait toujours plaisir et encourage à l'entraide. Un n'est pas à négliger, pensez aux autres !

    Que la force soit avec Developpez.net
    Je ne suis pas un crack en informatique, loin de là, mais il n'y a pas que les mécaniciens qui sachent conduire une voiture

  8. #8
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta réponse. J'ai utilisé Bootstrap et le résultat est déjà beaucoup mieux mais ça ne va pas pour les gros tableaux de certaines pages du site... Pour les plugins, j'ai installé FooTable mais cela n'a pas fonctionné et impossible de trouver l'autre plugin, DataTables. Mais si je comprends bien ce n'est pas possible de mettre le tableau à la vertical pour mobile ?

  9. #9
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2015
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2015
    Messages : 644
    Points : 1 509
    Points
    1 509
    Par défaut
    De quelle façon ça ne fonctionne pas?

    Mmh, je me doutais pour les plugins, ça nécessite quelques notions d'AJAX et de javascript.

    Il me semble que Bootstrap permet de créer des bandes enfants s'il y à trop de colonnes.

    Je m'explique :

    Si tu as un tableau comme ceci

    col1 col2 col3 col4 col5 col6 col7
    l1 l1 l1 l1 l1 l1 l1
    l2 l2 l2 l2 l2 l2 l2
    l3 l3 l3 l3 l3 l3 l3



    Quand tu vas redimensionner ta fenêtre, ta ligne 1 aura un petit ( + ) dépliable, ou s'affichera la colonne 7. Si tu réduis encore plus, la colonne 6 viendra s'y ajouter et ainsi de suite.

    C'est ce que permettent les deux plugins que je t'ai renseigné.

    Sinon, pour Bootstrap, tu peux voir avec cet exemple : http://www.bootply.com/GGAMvot45f
    Un fait toujours plaisir et encourage à l'entraide. Un n'est pas à négliger, pensez aux autres !

    Que la force soit avec Developpez.net
    Je ne suis pas un crack en informatique, loin de là, mais il n'y a pas que les mécaniciens qui sachent conduire une voiture

  10. #10
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Oui je comprends bien ce que tu veux dire avec ton exemple de tableau. Ce n'est pas idéalement ce que je recherche mais ça pourrait quand même faire l'affaire !
    j'ai vu que le plugin FooTable le permettait mais j'ai du mal l'utiliser car comme je te l'ai dis ça n'a pas marché.

    Pour bootstrap j'ai simplement utilisé la div : <div class="table-responsive"> autour de mon tableau comme indiqué ici : http://creersonsiteweb.net/page-boot...ponsive-design, ce qui permet de scroller le tableau à l'horizontal sur mobile.

    mais je ne sais pas comment faire pour aller plus loin et faire un tableau sur mobile avec des bandes enfants. As tu une idée de comment je pourrais l'implanter ? Si je me base sur l'exemple que tu m'as donné : http://www.bootply.com/GGAMvot45f, est ce que je dois intégrer les class à mon tableau et ajouter le petit code css comme indiqué sur le lien ?

  11. #11
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2015
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2015
    Messages : 644
    Points : 1 509
    Points
    1 509
    Par défaut
    Le plus simple, c'est de reprendre le dernier exemple avec les bandes enfant, et que tu l'adaptes à ton besoin.

    Il vaut mieux adapter les outils à son besoin plutôt qu'adapter ses besoin à l'outil. (Un peu compliqué )

    Donc mon conseil :

    Reprends ce dernier tableau, essaie déjà de reproduire l'exemple. Ensuite, tu te rapproches de ce que tu souhaites toi.

    Bon courage, je reste sur écoute !

    Edit : J'utilise moi-même Footable et fonctionne très bien. As-tu des connaissances en Ajax, JS, php?
    Un fait toujours plaisir et encourage à l'entraide. Un n'est pas à négliger, pensez aux autres !

    Que la force soit avec Developpez.net
    Je ne suis pas un crack en informatique, loin de là, mais il n'y a pas que les mécaniciens qui sachent conduire une voiture

  12. #12
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Ok je vais faire ça ! merci pour tes conseils
    Sinon je n'ai aucune connaissance en Ajax, JS et php... Seulement quelques bases en html/css

  13. #13
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 975
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 975
    Points : 44 146
    Points
    44 146
    Par défaut
    Bonjour,
    tu peux toujours regarder l'exemple fourni par SylvainPV : Une technique simple et accessible pour des tableaux responsive.

  14. #14
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Juin 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant communication & réseaux

    Informations forums :
    Inscription : Juin 2016
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Merci beaucoup pour le lien je vais essayer ça !

Discussions similaires

  1. Rendre un tableau html responsive
    Par MInfo25 dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 04/01/2016, 12h53
  2. Responsive design, media queries et samsung s3
    Par oceane751 dans le forum Mise en page CSS
    Réponses: 0
    Dernier message: 12/05/2015, 13h22
  3. Réponses: 3
    Dernier message: 19/08/2014, 14h41
  4. Media query : rendre invisible un titre avec display
    Par binco dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 07/04/2014, 21h53
  5. Nombre de media queries (responsive)
    Par mario94 dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 11/08/2013, 22h43

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