Bonjour à tous,
J'ai une question à propos des design à deux colonnes, assez courant quand il s'agit d'aligner le menu et le contenu.
Quand je fais ça, je décompose la page en deux/trois blocs parents (trois quand je mets un titre principal en h1 qui vient se loger tout en haut). Parmi eux, on trouve donc un bloc menu et un bloc contenu.
Ma question est simple: comment bien positionner en CSS ces deux blocs?
Actuellement, je définis ces deux éléments comme flottant; l'un à gauche; l'autre à droite. Cela me paraît plus "naturel" qu'un positionnement absolu; mais dans la réalité qu'est-ce qui convient le mieux?
Pour spécifier les largeurs, j'utilise l'unité '%' qui m'assure une très bonne capacité d'adaptation aux résolutions différentes des navigateurs. L'unité 'px' est définie pour une résolution donnée; l'unité 'em' est plus libre mais se cantonne à un ratio largeur/hauteur défini dans le cas des deux colonnes et reste dépendante de la taille de la police de l'utilisateur, non de la résolution elle-même.
Cependant, un problème persiste: les bordures sont considérées comme externe à l'élément; et surtout les marges internes ne sont pas comptées dans la largeur de l'élément. Avec des largeurs définies en pourcentage; sur une très petite résolution ça va finir par provoquer un débordement; et on va donc avoir une colonne au dessus de l'autre et non un alignement.
La seule solution que j'ai trouvée pour avoir des colonnes bien alignées partout est de supprimer les marges internes/externes et les bordures. Un sacrifice plus que regrettable.
Comment avoir un alignement parfait quelle que soit la résolution?
Le but, par rapport au tableau, reste d'avoir un site accessible sans CSS; pour ma part quand je fais en deux colonnes je mets un lien "Aller au menu" ou "Aller au contenu" pour éviter un long défilement à l'utilisateur et avoir une navigation agréable sur des écrans minuscules et sur des navigateurs qui ne supportent pas les CSS.
J'ai une question à propos des design à deux colonnes, assez courant quand il s'agit d'aligner le menu et le contenu.
Quand je fais ça, je décompose la page en deux/trois blocs parents (trois quand je mets un titre principal en h1 qui vient se loger tout en haut). Parmi eux, on trouve donc un bloc menu et un bloc contenu.
Ma question est simple: comment bien positionner en CSS ces deux blocs?
Actuellement, je définis ces deux éléments comme flottant; l'un à gauche; l'autre à droite. Cela me paraît plus "naturel" qu'un positionnement absolu; mais dans la réalité qu'est-ce qui convient le mieux?
Pour spécifier les largeurs, j'utilise l'unité '%' qui m'assure une très bonne capacité d'adaptation aux résolutions différentes des navigateurs. L'unité 'px' est définie pour une résolution donnée; l'unité 'em' est plus libre mais se cantonne à un ratio largeur/hauteur défini dans le cas des deux colonnes et reste dépendante de la taille de la police de l'utilisateur, non de la résolution elle-même.
Cependant, un problème persiste: les bordures sont considérées comme externe à l'élément; et surtout les marges internes ne sont pas comptées dans la largeur de l'élément. Avec des largeurs définies en pourcentage; sur une très petite résolution ça va finir par provoquer un débordement; et on va donc avoir une colonne au dessus de l'autre et non un alignement.
La seule solution que j'ai trouvée pour avoir des colonnes bien alignées partout est de supprimer les marges internes/externes et les bordures. Un sacrifice plus que regrettable.
Comment avoir un alignement parfait quelle que soit la résolution?
Le but, par rapport au tableau, reste d'avoir un site accessible sans CSS; pour ma part quand je fais en deux colonnes je mets un lien "Aller au menu" ou "Aller au contenu" pour éviter un long défilement à l'utilisateur et avoir une navigation agréable sur des écrans minuscules et sur des navigateurs qui ne supportent pas les CSS.