Bonjour tout le monde,
je tente de créer un menu qui soit responsive, qui soit aligné dans tous les axes sans devoir utiliser du JS ou php pour calculer la largeur selon le nombre d'onglets de menu par rapport a l'espace donné, et ne pas etre préoccupé que le texte ne soit pas centré verticalement, et compatible sur les nouveaux navigateurs.
La méthode du
La méthode
J'utilise donc la proprieté
car grace à
Tous mes problemes sont réglés.
je pense ne pas etre trop loin du résultat attendu, si ce n'est quelques soucis à droite et a gauche:
IE10 et Opera me jouent de petits tours, tout se passe bien, sur IE10, la gestion du menu deroulant qui est vertical partout ailleurs, ne l'est pourtant pas chez lui,
et sur opera, le hover sur les onglets du menu déroulant font un effet fading sur le texte.
Qu'en dites vous?
voici le code pen:
http://codepen.io/dqni/pen/HlbIJ
Modifié par dqniel (03 Jul 2013 - 12:08)
je tente de créer un menu qui soit responsive, qui soit aligné dans tous les axes sans devoir utiliser du JS ou php pour calculer la largeur selon le nombre d'onglets de menu par rapport a l'espace donné, et ne pas etre préoccupé que le texte ne soit pas centré verticalement, et compatible sur les nouveaux navigateurs.
La méthode du
display: inline-block;
vertical-aligne:middle;
meme si elle aligne les blocs, n'aligne pas le texte verticalement si son conteneur a une hauteur, de plus la largeur des blocs doit se calculer par js ou php.La méthode
display: table-cell;
vertical-aligne:middle;
aligne le texte verticalement automatiquement, mais il faut lui spécifier les largeurs et hauteurs aussi en js ou php pour que ce soit bon, et pareil pour que ses parents se partagent l'espace equitablement.J'utilise donc la proprieté
display: flex;
...car grace à
-moz-box-flex: 1;
-ms-flex: 1;
-webkit-box-flex: 1;
-o-box-flex: 1;
-webkit-flex: 1;
flex: 1;
-webkit-box-align: center; /*centrer verticalement*/
-moz-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
-webkit-box-pack: center; /*centrer horizontalement*/
-moz-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
Tous mes problemes sont réglés.
je pense ne pas etre trop loin du résultat attendu, si ce n'est quelques soucis à droite et a gauche:
IE10 et Opera me jouent de petits tours, tout se passe bien, sur IE10, la gestion du menu deroulant qui est vertical partout ailleurs, ne l'est pourtant pas chez lui,
et sur opera, le hover sur les onglets du menu déroulant font un effet fading sur le texte.
Qu'en dites vous?
voici le code pen:
http://codepen.io/dqni/pen/HlbIJ
Modifié par dqniel (03 Jul 2013 - 12:08)