Bonjour,
je suis sur un nouveau site, et j'ai décidé de le bâtir avec grid. Ma première mouture fonctionne bien, grid est très efficace pour ce qu'il a été prévu : faire des lignes et des colonnes flexibles, modifiables très facilement dans tous les sens. Il faut pourtant mettre dans ces lignes et colonnes des "items" (du texte, des images et tout ce que l'on peut mettre sur un site). Là, les choses se gâtent, on est bien obligé d'utiliser les width, height, center et autres commande css si on veut quelque chose d'exploitable. J'ai obtenu un bon résultat, mais j'ai cependant une question par rapport aux media queries.
Si j'ai bien compris, avec grid, on utilise plus les media queries pour adapter le site aux tailles d'écrans, on les utilise seulement pour changer l'ergonomie du site le moment voulu. C'est grid qui s'occupe désormais d'adapter les colonnes et les lignes aux tailles d'écrans. Bien, mais pour les "items" que l'on place, ça ne se passe pas aussi bien, de mon expérience. Pour ne centrer que des images sur mes pages, je dois utiliser des media queries, suivant les différentes tailles d'écrans. Grid ne le fait pas. Ma question principale est la suivante : doit-on laisser toutes les commandes grid en dehors des media queries et n'utiliser celles-ci que pour le placement des "items" ?
A ce stade, je ne donne pas de lien sur le site provisoire. Il est sur un compte gratuit, en attendant sa finalisation. Je donne cependant une partie du css, afin que ma question soit bien comprise. Il y a dans ce bout de code les commandes grid et aussi le css permettant de placer des images qui se retournent au survol de la souris. C'est cette partie du code "PROFILES" et "FLIP" qui me pose problème. Suivant les résolutions d'écrans, je dois modifier les width et height dans "profiles". Et la seule solution est d'utiliser les media queries.
A noter que sur un iPad mini, mon site grid n'est pas affiché, mais ça, ce sera une autre histoire.
Message un peu long, mais merci pour vos réponses.
je suis sur un nouveau site, et j'ai décidé de le bâtir avec grid. Ma première mouture fonctionne bien, grid est très efficace pour ce qu'il a été prévu : faire des lignes et des colonnes flexibles, modifiables très facilement dans tous les sens. Il faut pourtant mettre dans ces lignes et colonnes des "items" (du texte, des images et tout ce que l'on peut mettre sur un site). Là, les choses se gâtent, on est bien obligé d'utiliser les width, height, center et autres commande css si on veut quelque chose d'exploitable. J'ai obtenu un bon résultat, mais j'ai cependant une question par rapport aux media queries.
Si j'ai bien compris, avec grid, on utilise plus les media queries pour adapter le site aux tailles d'écrans, on les utilise seulement pour changer l'ergonomie du site le moment voulu. C'est grid qui s'occupe désormais d'adapter les colonnes et les lignes aux tailles d'écrans. Bien, mais pour les "items" que l'on place, ça ne se passe pas aussi bien, de mon expérience. Pour ne centrer que des images sur mes pages, je dois utiliser des media queries, suivant les différentes tailles d'écrans. Grid ne le fait pas. Ma question principale est la suivante : doit-on laisser toutes les commandes grid en dehors des media queries et n'utiliser celles-ci que pour le placement des "items" ?
A ce stade, je ne donne pas de lien sur le site provisoire. Il est sur un compte gratuit, en attendant sa finalisation. Je donne cependant une partie du css, afin que ma question soit bien comprise. Il y a dans ce bout de code les commandes grid et aussi le css permettant de placer des images qui se retournent au survol de la souris. C'est cette partie du code "PROFILES" et "FLIP" qui me pose problème. Suivant les résolutions d'écrans, je dois modifier les width et height dans "profiles". Et la seule solution est d'utiliser les media queries.
body {
display: grid;
height:100%;
grid-template-rows: 10px 5px min-content 40px 1fr;/*Hauteur des items*/
grid-template-column: auto;/* Largeur des items */
grid-rows-end: auto;
grid-row-gap: 50px;/*Espacement vertical entre les items*/
background-image: url("Images/Beoumi-1024.jpg");
background-repeat:no-repeat;
background-size:cover;
}
#sitemast {
grid-row: 1;
grid-column: 1 / span 2;
width:100%;
font-size:6vw;
text-align:left;
padding-top:5px;
margin-left:60px;
font-family:'PolicePerso', serif;
color:yellow;
}
#nav {
grid-row: 2;
grid-column: 1 / span 2;
position: static;
margin-top: 35px;
padding-bottom: 0;
font-size:.8em;
text-decoration:none;
text-align:center;
}
#titre {
grid-row: 4;
grid-column: 1;
width:90%;
text-align:center;
font-family:'PolicePerso', serif;
color:yellow;
margin-top:0%;
padding-top: 0;
}
#content {
grid-row: 3 / span 3;
grid-column: 1;
width:90%;margin-top:5em;
overflow: auto;
}
#main {
grid-row: 5;
grid-column: 1;
width:60%;height:auto;
color:white;
margin-right:20%;
margin-left:20%;
padding-top: 0;
overflow: auto;
}
#footer {
grid-row: 6;
grid-column: 1;
height:auto;
margin-right: 0;
word-spacing:1px;
text-align:center;
font-size:3.4vw;
background:rgba(70, 0, 100, 0.2);}
/* PROFILES */
.profiles, .info { list-style:none; cursor:pointer; }
.profiles > li { width:180px; height:210px; float:left; margin-left:10%;margin-right:-10%; }
.info, .pic { position:absolute; }
.info { font-family: 'Lato', sans-serif; color:#fff; font-size:12px; padding:5px; background-color:rgba(137, 186, 17, 0.8); width:140px; height:160px; opacity:0; text-align:center; }
.info a { font-weight:bold; font-size:25px; color:#fff; text-decoration:none; }
.info a:hover { text-decoration:underline; }
.pic { width:140px; height:160px; }
/* FLIP */
#flip { perspective: 800px; }
#flip .info { transition: all 0.8s; opacity:1; transform-style: preserve-3d; }
#flip .info li { transform: rotateY(180deg); } /* Flip the text: Will be flipped back when animated */
#flip .pic { transition: all 0.8s; backface-visibility: hidden; z-index:999; transform-style: preserve-3d; }
#flip li:hover .info { transform: rotateY(180deg); }
#flip li:hover .pic { transform: rotateY(180deg); }
}
A noter que sur un iPad mini, mon site grid n'est pas affiché, mais ça, ce sera une autre histoire.
Message un peu long, mais merci pour vos réponses.