28220 sujets

CSS et mise en forme, CSS3

Pages :
Bonjour,

J'ai un petit soucis avec un DIV flotant au dessus d'autres div.
Mais rien ne vaut un petit exemple :

http://spheeris.free.fr/alsa/encart-pub.html

Comme vous le voyez, le DIV vert est au dessus des DIV rouges
Je souhaiterai que les DIV rouges qui sont à la hauteur du DIV vert s'adaptent automatiquement afin qu'ils ne soient plus cachés par le DIV vert.

Je ne sais pas si je me fait bien comprendre Smiley lol
Modifié par EcliptuX (28 Jun 2006 - 19:46)
Salut,

c'est louche ton problème Smiley ohwell
normalement ça devrait rouler Smiley confus

Ca donne quoi si tu met du texte dans tes <div> ?
Tu peux pousser les div vers la gauche avec une marge de droite.

edit :

olivier > c'est vrai que sur ce coup ci je ne vois pas trop pourquoi ça fait ça Smiley confus
Modifié par TriadPtale (29 Jun 2005 - 21:06)
TriadPtale a écrit :
Tu peux pousser les div vers la gauche avec une marge de droite.


Bah oui dans l'absolu, mais nan dans la pratique, je pense qu'il veut que les boites repassent en dessous lorsqu'elles ont dépassée la hauteur de la boite verte.
TriadPtale a écrit :
Oui, ma solution ne colle pas ...

Ce n'est pas mieux de faire flotter les div de gauche à gauche ?


Pas possible Smiley smile
avec les float, il faut pouvoir les dimenssionner sinon ça colle pas.

Désolé je casse en morceau toutes tes tentatives d'idées Smiley ohwell

En tout cas, je comprend pas le problème...

(edit) au fait les doctype, c'est bien aussi Smiley murf Smiley rolleyes
Modifié par Olivier (29 Jun 2005 - 21:11)
TriadPtale a écrit :
Je proposes parce que là je ne vois pas trop ... Smiley langue

c'est l'énigme du jour Smiley langue


Wé, j'ai mal à la tête là Smiley ohwell

Sérieux, c'est trop zarb ce truc Smiley lol

J'ai fait quelques tests en local mais rien...

Par contre, tu peux déjà enlever le width: 100%; qui ne sert à rien et qui à la limite pourrait devenir génant.
Le background est destiné à rester ? Ou c'est juste pour l'illustration ? Parce que si lui il passe en dessous, je doute que le texte en fasse de même.

Enfin c'est bizarre mais moi ca me semble normal le résultat actuel :x
En y réfléchissant, je crois qu'il faudrait essayer en saupoudrant tout ça de "Lorem Ipsum". De ce que je me souviens des specs, ce comportement est normal. Essaye avec du texte !

@+, HoPHP
tyx a écrit :
Le background est destiné à rester ? Ou c'est juste pour l'illustration ? Parce que si lui il passe en dessous, je doute que le texte en fasse de même.
En effet, le contenu des div.adresse est bien coupé à droite.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<style type="text/css">
/*<![CDATA[*/

  div.adresse {
   width: 100%;
   margin-bottom: 10px;
   border: blue 1px solid;
   background: yellow;
  }

  div.pub {
   float: right;
   width: 250px;
   height: 300px;
   border: red 1px solid;
   background: green;
  }

/*]]>*/
</style>
<title></title>
</head>
<body>
<div class="pub"></div>
<div class="adresse">Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nunc tristique mi quis lectus. Sed eget est. Praesent urna. Duis vulputate lectus quis quam. Mauris neque. Praesent sollicitudin scelerisque mi. Cras pharetra, velit eu feugiat mattis, pede lectus ullamcorper eros, quis auctor sapien felis nec felis. Nunc hendrerit. Sed augue augue, ornare eget, congue pretium, consectetuer eget, erat. Duis scelerisque, arcu ac porttitor sodales, wisi enim interdum lacus, nec consectetuer turpis arcu semper urna. Mauris mattis, est a posuere consequat, mauris urna tincidunt elit, quis pretium lorem magna at turpis. Sed condimentum ornare metus. Quisque cursus nunc sit amet augue.</div>
<div class="adresse">Quisque consectetuer ante. Mauris sagittis. Donec risus. Nulla ac odio. Donec in leo varius nisl auctor molestie. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer mattis fermentum turpis. Sed dui ipsum, aliquam sed, mollis iaculis, mattis et, diam. Ut id massa id ante rhoncus dignissim. Cras augue risus, sollicitudin quis, ullamcorper et, semper et, mauris. Duis ut sem eget lorem suscipit rutrum. Nam euismod. Pellentesque pede justo, interdum nec, condimentum ultrices, commodo non, nunc. Donec massa. Pellentesque libero. Aenean eu ligula. Aenean erat risus, molestie eu, tincidunt quis, scelerisque porttitor, nulla. Ut id lacus et quam laoreet egestas. Nam libero tellus, elementum a, vulputate ac, hendrerit tempus, magna. Curabitur interdum lacinia tellus. Etiam eget turpis non elit facilisis eleifend. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. In tempus libero sit amet mi. Nunc ultrices libero eu sapien. Aliquam ullamcorper neque sed massa. In nonummy. Aliquam ut justo. Donec laoreet mollis lacus. Aliquam et mi. Donec velit metus, lacinia vitae, dictum vitae, dapibus vel, neque. Morbi blandit commodo lacus. Aenean pellentesque. Nunc ligula mi, tristique eu, cursus eu, condimentum vitae, erat.</div>
<div class="adresse">Sed nunc mauris, eleifend vehicula, convallis vel, lobortis eu, arcu. Nulla ut odio sit amet velit fringilla viverra. Praesent vitae eros nec erat hendrerit vestibulum. Suspendisse auctor consequat magna. Mauris convallis quam vel leo. Sed orci. Morbi quis velit sed enim egestas accumsan. Praesent metus. Praesent fermentum, velit a fermentum feugiat, metus est ultrices risus, id consequat libero est at wisi. Quisque lobortis dui sed mauris. Quisque dictum sem sit amet purus. Suspendisse vel mauris.</div>
</body>
</html>
upload/2374-screenshot.gif
Modifié par naholyr (29 Jun 2005 - 23:01)
Je viens d'actualiser la page de démo avec vos suggestions.
http://spheerys.free.fr/alsa/encart-pub.html

En effet, le texte revient bien à la ligne au lieu de passer sous le DIV vert.

Y a-t-il moyen de faire en sorte que les DIV rouges ne s'étendent pas - eux aussi- au delà du DIV vert ?

Edit : grilled by naholyr Smiley biggol
Modifié par EcliptuX (29 Jun 2005 - 23:14)
TriadPtale a écrit :
Fait flotter un div un peu plus grand avec arrière plan blanc Smiley smile


J'ai pas bien saisi ton idée TriadPtale Smiley sweatdrop
Puisque tu veux un contour blanc, et pas que le rouge n'aille jusqu'au bout :

au lieu de faire juste flotter le vert, tu fais flotter un truc un peu plus grand , arrière plan blanc. Dedans tu met le truc vert.

Le blanc masque le rouge et donne l'impression que le vert empeche les truc rouge d'aller jusqu'à droite Smiley cligne
Hummm ok je comprends.... mais bon c'est qd même sacrément du bidouillage Smiley lol
D'autant plus que dans l'application que je suis en train de développer, les DIV rouges ont un peu de "design", ce qui fait qu'il est impératif pour moi que leur côté droit soit dégagé, et non masqué par un cadre blanc...

Je pensais que mon problème allait être résolu en 15 min tant j'étais persuadé que j'étais passé à côté d'une fonction CSS oubliée...

Si ce que je veux n'est pas réalisable en CSS, aurais-je un espoir en utilisant des tableaux (chaque DIV rouges seraient alors un tableau unicellulaire) ?
Modifié par EcliptuX (29 Jun 2005 - 23:51)
Oui, mais alors tu perd complètement en flexibilité : tu dois fixer le design.

Donc alors autant utiliser ma première méthode (marges) et le faire en css...
Comme le dit Olivier, je souhaite que les boites rouges fassent 100% lorsqu'il n'y a plus la boite verte.
En plus, comme il s'agit d'une appli dynamique, je ne peux pas mettre en place ce genre de spécificité Smiley ohwell

Mais de mémoire, je suis sûr d'avoir des sites avec ce genre de structure (DIV rouge + DIV vert sans chevauchement).... Il faudrait que je retombe dessus pour étudier tout ça Smiley murf

Sinon, si mon pb est insoluble en CSS2, comment on fait pour suggérer une amélioration de la future norme CSS3 que l'on estime légitime ?
a écrit :
Comme le dit Olivier, je souhaite que les boites rouges fassent 100% lorsqu'il n'y a plus la boite verte.
En plus, comme il s'agit d'une appli dynamique, je ne peux pas mettre en place ce genre de spécificité ohwell


je veux bien , mais bon les tableaux ne sont pas la solution, c'est tout.

CSS 3 ne change rien à ce genre de choses...
Pages :