28172 sujets

CSS et mise en forme, CSS3

Bonjour à tous,

J'ai un soucis avec deux div que j'aimerais mettre côté à côté, prenant toute la largeur du parent, mais sans leur donner de width.

Je m'explique, vous verez mon code à la suite dans lequel il y a deux div en float left, le premier avec un width de 20% et le second avec un width de 80%.
Le problème, c'est que sur mon site à certains moment le premier bloc disparait, il ne me reste plus que le deuxième avec un width de 80%. Or, j'aimerais qu'il fasse 100% quand le premier bloc disparait, c'est pour cela que j'aimerais qu'il n'est pas de width mais qu'ils prennent quand même toute la largeur.


<div id="menu">
  Menu
</div>
<div id="description">
  <div id="gauche" class="descriptions">
    Description à gauche
  </div>
  <div id="droite" class="descriptions">
    Description à droite
  </div>
</div>



#menu, #description {
  padding: 10px;
  float: left;
}
#menu {
  width: 20%;
  background: red;
}
#description {
  width: 80%;
  background: yellow;
}
.descriptions {
  float: left;
}
#gauche {
float: left;
}
#droite{
float: right;
}


J'espère que c'est clair, auriez-vous des idées ?
Bonjour Smiley cligne
Je pense qu'il serais plus facile dans ce cas d'utiliser un display: flex que tu met sur le parents, tes deux autre div vont automatiquement se le partager

Bon courage Smiley smile
Merci pour cette rapide réponse ! Smiley smile
J'ai essayé le display:flex; malheureusement les div se partagent l'espace mais pas à 100%...
Et autre chose que je n'avais pas mentionné mais qui est important, le bloc div#droite devra toujours se trouve à l’extrême droit du parent Smiley smile
#description {
  width: 80%;
  background: yellow;
}


Plutot que ça
Essaye

#droite{
width: 80%
}

#gauche{
width: 20%
}
Oh je l'ai ! La piste du display:flex; m'a bien aidé, merci ! Smiley lol
Il suffit d'ajouter display: flex; à div#description
Et ensuite un margin-left: auto; à div#droite pour que celle-ci reste à droite.
Enlever tous les float et les width afin que le flex s'appuie sur la valeur du parent !

Encore merci Smiley smile