27859 sujets

CSS et mise en forme, CSS3

Bonjour,

Cette discussion fait suite à ce sujet résolu.

Prenons le même codepen

Le footer est position : fixed.
Au scroll, le texte passe sous le footer, normal.

Je veux que le texte contourne le footer comme si celui-ci était flottant.

En gros avoir un élément flottant en position fixed.

Le sujet est traité sur quelques forums, par exemple ici.

Une solution avec du javascript est contraire à ma religion pour cet usage.

Je me demande si les nouvelles propriétés de positionnement (flexbox ou grid) permettent d'obtenir l'effet voulu 100 % CSS.

Je pense que c'est impossible mais je suis sûr que je ne suis pas le seul à avoir ce besoin.

Merci d'avance.
Bonjour Olivier-C,

Merci de ton suivi.

Si je dis qu'il faut un élément fixe qui soit dans le flux, est-ce plus clair ?

Par ailleurs le codepen me semble clair : le texte passe sous le footer fixe.
Je veux que le texte contourne mon footer fixe.

Je ne connaissais pas shape-outside.
Intéressant mais non adapté :
1) mon bloc footer est rectangulaire.
2) cela ne règle pas le problème du positionnement.
boteha_2 a écrit :
Si je dis qu'il faut un élément fixe qui soit dans le flux, est-ce plus clair ?

Effectivement c'est compliqué car en position absolute et fixed l'élément sort du flux, du coup il n'a plus de moyen pour interagir avec ce qui l'entoure. Je ne sais pas comment tu pourrais faire...
Bonjour,

Olivier C a écrit :

Effectivement c'est compliqué car en position absolute et fixed l'élément sort du flux, du coup il n'a plus de moyen pour interagir avec ce qui l'entoure. Je ne sais pas comment tu pourrais faire...


Moi non plus, c'est pas évident.
Mais comme le besoin est assez répandu des experts ont pu y réfléchir.
Bonjour,

Olivier C a écrit :

Vous êtes sûr ? Je n'ai pas d'exemple de sites en tête gérant ce cas.


Moi non plus...
Sérieusement je pense que c'est impossible à réaliser avec la technique actuelle, sauf sans doute avec un javascript assez tordu.

Mais on ne sait jamais, ce sujet est une bouteille à la mer.