28173 sujets

CSS et mise en forme, CSS3

Bonjour à tous

j'ai un problemes avec des div..

j'ai deux div que j'ai mis en float:left dans un div(content)

le probleme c'est que les div sortent du content

comment faire.. ?

CSS:

#all{
	width:800px;
	margin:auto;
}
#content{
	padding:10px;
	background-color:#FFFFFF;
}
#menu{
	width:100px;
	float:left;
}
#form{
	width:680px;
	float:left;
}


	
<div id="all">
	<div id="head"><img src="img/head.jpg" alt="" /></div>
	<div id="content">
		content
	     <div id="menu">
		     menu
	     </div>
	     <div id="form">
                     formulaire
	     </div>
	</div>
</div>


voilà si vous pouviez m'aider merciii Smiley ravi
Modifié par lon-va (09 Oct 2007 - 23:55)
Salut,

Je crois que tu devrais mettre un "overflow:hidden;" dans ton #content pour que les autres blocs restent à l'intérieur.
merci! ca fonctionne sous FireFox mais pas sur ie Smiley confus

Je me demande pourquoi le div en dessous ne garde pas les deux div dans lui meme...c'est bizzard quand meme

si quelqu'un peu m'éclairer.. merci
Hello,

Les éléments flottants ne sont pas considérés dans le flux de la page par défaut, c'est à dire que c'est comme s'ils n'étaient "pas la" pour leurs conteneurs (qui ne s'agrandissent donc pas).

Pour faire rentrer un élément dans le flux il faut que l'élement qui le suit contienne une déclaration de type clear: (clear:right, clear:left ou clear:both)

Ca c'est pour la théorie, dans la pratique et pour éviter de polluer le code avec plein d'éléments juste là pour remettre tout dans le flux on utilise une autre méthode, celle du overflow:hidden sur le conteneur comme indiqué par Titums

Mais comme celle-ci ne fonctionne pas toujours sous IE pour de sombres raisons (en savoir plus ici, il faut utiliser pour celui-ci un height:1% ou zoom:1 (de préférence dans une feuille de style spéciale IE)
Modifié par Tymlis (10 Oct 2007 - 14:20)