28173 sujets

CSS et mise en forme, CSS3

Bonjour,

J'ai lu et (pense avoir) bien compris le principe des pseudo/simili-frames.
Néanmoins, mon problème est le suivant:

Situation: imaginez une page sur «2 colonnes» avec à droite le menu et à gauche le contenu. Entre les deux colonnes, une bordure (issue de l'une ou l'autre des 2 zones, peut importe).

Problème: en utilisant les simili-frames de GCyrillus (http://gcyrillus.free.fr/gabarits/simili-frame-extensible-fluide-et-scroll-a-la-roulette-IE-Firefoxe.html), quand le contenu est trop petit en hauteur, la bordure (rouge sur le lien précédent) ne se prolonge plus jusqu'au bord de la fenêtre! Or, je souhaite en permanence avoir cette bordure sur toute la hauteur de la fenêtre, que le contenu tienne entièrement (trop petit) ou pas (trop grand - mais ça on sait faire) dans la fenêtre.

Question: Comment faire pour que la bordure (et donc le bloc div) se prolonge de haut en bas de la fenêtre même quand le contenu tient largement dans cette dernière ?

Merci de vos réponses,
--
Versatil Studio
Modifié par versatil (16 Jun 2006 - 03:20)
Modérateur
Bonjour,

Hélas, si tu utilise cette bidouille simili-poulet-framé, tu vas avoir un problème beaucoup plus grave qu'une simple bordure. Je suis avec Firefox, sans Javascript, et je ne peux plus scroller la fenêtre pour voir le menu en entier... je ne peux que scroller la partie contenu. Je t'invite à en faire l'expérience avec Firefox et d'autres navigateurs sans Javascript. Avec IE, ca passe plus ou moins mais on se retrouve avec deux scrollbars verticales, selon la résolution d'écran. Je trouve ca plutôt innaccessible/non-ergonomique comme interface et d'ailleurs, je n'y vois pas beaucoup d'intérêt.

Je te suggère donc de réfléchir au bien fondé de l'utilisation de ce simili-machin.

Bonne journée !
Modifié par Tony Monast (16 Jun 2006 - 15:05)
a écrit :
Je te suggère donc de réfléchir au bien fondé de l'utilisation de ce simili-machin.


Bonsoir,

C'est simple: sur ma fenêtre, je souhaite avoir, du bord haut au bord bas, une bordure verticale entre deux zones genre ça

upload/7180-frame-probl.png

Mes deux zones sont le menu (à droite) et le contenu (à gauche) et entre les deux il doit toujours y avoir une bordure séparatrice (flèche rouge sur l'image), même si content et menu ont de petites hauteurs.

C'est assez clair? (j'ai l'impression de demander quelque chose de simple à comprendre, mais l'écriture et sa lecture ne doivent pas être évidents).
Modifié par versatil (15 Jun 2006 - 22:14)
Modérateur
Ma réponse se voulait une mise en garde à l'utilisation de la technique de GCyrillus, car tu disais que tu l'utilisais. Maintenant, tu en fais ce que tu veux.

Pour répondre à ta question d'origine, tu peux utiliser la technique des colonnes factices. L'idée est de mettre un fond au conteneur principal (au body même) qui se répète en hauteur pour afficher la colonne. L'article date un peu. L'auteur parle de son site personnel comme exemple, mais celui-ci à changé depuis un certain temps déjà. Tu peux tout de même lire l'article pour comprendre de quoi il est question.

J'espère que ca peut t'aider.
Modifié par Tony Monast (15 Jun 2006 - 22:54)
a écrit :
J'espère que ca peut t'aider.


Oui.

Effectivement, c'est idiot, mais il faut prendre un peu de recul:

1) une simple image de fond au bon motif (pour ma colonne juste 1 pixel de couleur),
2) alignée à droite,
3) se répétant à la verticale.

Soit
body { background: white url("fond.png") right repeat-y; }

et le tour est joué!

Merci Tony Monast.
Modifié par versatil (16 Jun 2006 - 03:18)