28173 sujets

CSS et mise en forme, CSS3

Hum, ces titres de sujet sont trop courts…

Le titre complet est « Largeur anarchique d'un élément doté de layout avec Internet Explorer lorsque le bloc parent est flottant ou en positionnement absolu »

Il s'agit d'une série de pages de test autour d'un bug repéré il y a quelques semaines – mais sans doute déjà connu ailleurs. Il s'agit d'un bug de HasLayout, mais il ne me semble pas l'avoir vu référencé chez Laurent Denis.

Voilà la page principale.

Si quelqu'un a une analyse un peu précise du problème (pour ma part je me perds en conjecture pour ce qui concerne le référent de la largeur prise par le bloc fautif), une source quelque part, etc., je suis preneur.
Modifié par mpop (01 Jul 2006 - 01:59)
Salut,

Les deux situations (conteneur en absolute ou en float) sont quand même très différentes.

Dans le cas du conteneur en position:absolute; la chose semble très claire et les largeurs obtenues n'ont rien d'anarchiques.

Dans le cas du conteneur en flottant évidemment c'est autre chose, et je n'ai évidemment pas d'explications

Deus remarques :
pour la clarté de l'exposé je trouve que tu devrais mettre de manière explicite le cas de l'élément doté du haslayout avec width:100%;
ça permet de pointer directement l'aberration (cas du conteneur en flottant).

pour les possibilités de solutions ce serait bien d'indiquer que le dimensionnement du conteneur règle l'affaire dans les deux cas.
je n'ai pas constaté de comportement reellement anarchique sur ta page.
Il est tout a fait normal qu'un span en display:block et avec une propritete comme largeur ou hauteur specifiée attribue des marges quand celles-ci ne sont pas inialisées a 0
jp94 a écrit :
je n'ai pas constaté de comportement reellement anarchique sur ta page.
Il est tout a fait normal qu'un span en display:block et avec une propritete comme largeur ou hauteur specifiée attribue des marges quand celles-ci ne sont pas inialisées a 0

Bonjour jp94,

As-tu regardé les trois pages de test avec Internet Explorer 6 ?

clb56 a écrit :
pour la clarté de l'exposé je trouve que tu devrais mettre de manière explicite le cas de l'élément doté du haslayout avec width:100%;
ça permet de pointer directement l'aberration (cas du conteneur en flottant).

Tu veux dire présenter ce cas sur la page principale ?
Je pensais faire une capture d'écran mais j'ai eu la flemme (j'ai passé toute ma soirée à retoucher mes pages de tests…)

clb56 a écrit :
pour les possibilités de solutions ce serait bien d'indiquer que le dimensionnement du conteneur règle l'affaire dans les deux cas.

Hmm, il faudrait que j'explore ça. J'ai testé plein de trucs, mais il ne me semblait pas avoir constaté ce phénomène. More on this later.
mpop a écrit :

Tu veux dire présenter ce cas sur la page principale ?


Non, non juste le mettre explicitement dans la page de test sur les flottants. Implicitement ça s'y trouve bien sur mais il nous faut déduire que la largeur de

p {
zoom:1;
}


est bien ce que IE donne quand on indique un width de 100% sur ce p.

Pour le test sur le dimensionnement du conteneur, je l'ai fait à partir de ton code copier/coller et c'est ok.
Modifié par clb56 (02 Jul 2006 - 01:21)
clb56 a écrit :
Non, non juste le mettre explicitement dans la page de test sur les flottants.

Et voilà, c'est fait. La page de tests des flottants devrait être plus claire maintenant.

EDIT : testé le coup du bloc parent avec largeur fixe. Ça marche nickel. Je me demande comment j'ai fait pour ne pas y penser… Enfin, c'est aussi pour ça que je poste sur le forum, pour qu'on m'indiquer ce à quoi je n'ai pas pensé.

Faut que je corrige ma page principale alors.
EDIT2 : correction de la page principale et des deux pages d'exemples.
Modifié par mpop (01 Jul 2006 - 16:26)
mpop a écrit :

largeur fixe.


Pas largeur fixe mais largeur déterminée. Dit autrement :

.conteneur {
width:50%;
}


Fonctionne aussi.
Modifié par clb56 (01 Jul 2006 - 19:00)