Comment flotteur 3 divs côte à côte à l'aide de CSS?
Je sais comment faire 2 divs flotter côte à côte, tout simplement flotter un à gauche et l'autre vers la droite.
Mais comment faire avec 3 divs ou devrais-je simplement utiliser des tableaux pour cela?
- Pas assez d'informations. Quelle est la largeur de l'couches?
- J'avais
display: inline-block
ces gars-là plutôt que de les faire flotter. Si leurs largeurs sont au total moins de la largeur du conteneur ils vont s'asseoir les uns à côté des autres. - Je recommande l'utilisation de "display: table". Il est le plus facile à gérer et des solutions fiables. voir stackoverflow.com/questions/14070787/...
Vous devez vous connecter pour publier un commentaire.
Suffit de leur donner une largeur et une
float: left;
, voici un exemple:<br style="clear: left;" />
avec ce style en particulier.La façon moderne est d'utiliser le CSS flexbox, voir tables de soutien.
CSS:
HTML:
Vous pouvez également utiliser grille CSS, voir tables de soutien.
CSS:
HTML:
C'est comme vous l'avez fait pour les deux divs, juste flotter la troisième à gauche ou à droite.
flotter toute la gauche
assurez-vous que la largeur est spécifié qu'ils peuvent tenir dans leur conteneur (soit une autre div ou de la fenêtre), sinon ils vont envelopper
que le code que quelqu'un a posté là-haut, il a fait le tour!!!
quand je colle juste avant la fermeture de la DIV Conteneur, il permet d'effacer tous les DIVs de chevauchement avec des DIVs, j'ai créé côte-à-côte en haut!
tadaa!! 🙂
Float tous les trois divisions de la gauche. Comme ici:
J'ai l'habitude de juste flotter la première à gauche, deuxième à droite. La troisième aligne automatiquement entre eux, puis.
l'avantage de cette manière est que vous pouvez définir la largeur de chaque colonne indépendante de l'autre aussi longtemps que vous le garder en dessous de 100%, si vous utilisez 3 x 30%, les 10% restant se répartissent comme 5% diviseur de l'espace entre les colonnes
vous pouvez float: left pour tous, et de définir la largeur de 33.333%
essayez d'ajouter "display: block" pour le style
Je préfère cette méthode, les flotteurs sont mal pris en charge dans les anciennes versions d'IE (vraiment?...)
Mise à JOUR :
Bien sûr, pour utiliser cette technique, et en raison du positionnement absolu, vous devez placer les divs sur un récipient et faire un post-traitement pour définir la hauteur de si, quelque chose comme ceci:
Pas la chose la plus étonnante dans le monde, mais au moins ne pas se casser sur les anciens IEs.
Je n'ai pas vu le bootstrap réponse, donc pour ce que ça vaut la peine:
laisser Bootstrap comprendre les pourcentages.
J'aime pour effacer à la fois, juste au cas où.
Mais ça fonctionne dans Chrome?
Flotter chaque div et de définir de façon claire;à la fois pour la ligne. Pas besoin de régler les largeurs si vous ne voulez pas. Fonctionne dans Chrome 41,Firefox 37, c'est à dire 11
Cliquez sur pour JS Fiddle
HTML
CSS
Voici comment j'ai réussi à faire quelque chose de semblable à l'intérieur d'un
<footer>
élément:CSS:
@Leniel cette méthode est bonne, mais vous devez ajouter la largeur de toutes les div flottante du. Je dirais que faire de largeur égale ou attribuer une largeur fixe. Quelque chose comme
vous pouvez attribuer des noms de classe pour chaque div plutôt que d'ajouter
inline style
, ce qui n'est pas une bonne pratique.Assurez-vous d'utiliser un clearfix div ou clair div pour éviter de suivre le contenu reste en dessous de ces divisions.
Vous pouvez trouver les détails de comment utiliser clearfix div ici