28172 sujets

CSS et mise en forme, CSS3

Bonjour,
j'aimerais savoir s'il existe une technique qui me permette de forcer la hauteur d'une div sous IE6 sans passer par overflow.
Modifié par Hermann (26 Apr 2010 - 17:53)
BeliG a écrit :
Hello,
Tu veux corriger un min-height mais le overflow:hidden sur le conteneur te gêne ?

Non et oui : je n'ai pas de min-height mais un height (interprété comme un min-height donc sous IE6) et ne je ne peux ajouter d'overflow sur le conteneur car un élément sort visuellement du bloc.
Hermann a écrit :
je n'ai pas de min-height mais un height (interprété comme un min-height donc sous IE6)
J'avais compris. Smiley cligne

Essaye d'écraser le overflow:hidden avec overflow:visible (pour IE6), en général ça marche plutôt bien.
BeliG a écrit :

Essaye d'écraser le overflow:hidden avec overflow:visible (pour IE6), en général ça marche plutôt bien.

Je n'avais pas ajouté d'overflow:hidden et l'overflow:visible ne change rien mais merci quand même se te pencher sur mon problème Smiley cligne
Bon s'il n'existe pas de solution, je mettrai l'élément en position: absolue.
Modifié par Hermann (26 Apr 2010 - 14:37)
bonjour,

peut tu décrire ton contexte ou mettre un exemple significatif ?

Grossierement si c'est pour couper ce qui depasse :
conteneur en height + position:relative ,
conteneur tampon en absolu
contenu dans le flux de l'absolu .. Smiley smile
Le positionement relatif cachera tout ce qui déborde dans IE6 .



Si le conteneur a des élément sortant que tu veut voir , il te faudra alors faire une imbrication supplémentaire pour ne clipper que les contenus que tu ne veut pas laisser déborder .
.. sauf si c'est autre chose Smiley smile

Cordialement , GC
Salut,
en simplifiant j'ai ceci :
<div id="bothead">
			<img src="../images/acc_header_bg.jpg" width="735" height="363" alt="" />
		</div>

Avec l'image qui dépasse en bas du bloc

et pour le CSS:

	#bothead {height: 187px}
	#bothead img {position:absolute; left: 50%; margin-left: -367px} /*la  solution que je viens de choisir*/


a écrit :
Si le conteneur a des élément sortant que tu veut voir , il te faudra alors faire une imbrication supplémentaire pour ne clipper que les contenus que tu ne veut pas laisser déborder .
C'est le cas : l'image mais j'ai pas bien compris ta solution.
Hola... J'avais vraiment mal compris ton problème. Smiley sweatdrop

En effet, positionner l'image en absolu me semble être une bonne solution.
okay , si il ne s'agit que d'une image , tu peux ma mettre en height et width a zero . puis appliquer des marges internes (padding) pour quelle occupe l'espace que tu souhaites , enfin tu positionne en background la même image et tu regle avec background-position , ça marche dans IE6 en mode standard.

sinon plus simple peut-etre le duo un conteneur en absolu + clip: rect();

Pour IE6 et ce que tu n'as pas compris (je m'exprime toujours mal et j'ai tendance a comprendre de travers aussi ... alors).

pour que des contenus débordants ou replacer visuellement a l'extérieur de la zone d'affichage d'un élément , il suffit de positionner celui-ci en relatif , ce qui déborde ne s'affiche en principe plus , mais ne modifie en rien le comportement spécifique de height dans IE6 . reste alors un enfant en absolu (que l'on dimensionne eventuellement en largeur ou hauteur selon les besoins) .
Il pourra s'étaler dans son parent et déborder sans être vu au delà de la zone de son parent et sans forcer une barre de défilement (a l'aide d'un javascript on peut par exemple deplacer une carte en ne jouant que sur les coordonnées de positions ).

Le positionnement relatif dans IE6 peut avoir un effet de clippage interessant sur les enfants en position absolute et relative , c'est plus souvent perçu comme un 'bug' .

heu .. ?! tu cherche bien a contenir/couper l'image ?

GC