J'ai la structure de colonne bootstrap-4 suivante:
[A] [B] [C]
La disposition de colonne attendue en fonction de la taille de l'écran est:
XS:
[A][B][C]
SM et plus:
[ A ] [B][C]
Cependant, en XS, chaque div prend toute la largeur comme ceci:
<div class="container"> <div class="row"> <div class="col-xs-12 col-sm-4">A</div> <div class="col-xs-6 col-sm-4">B</div> <div class="col-xs-6 col-sm-4">C</div> </div> </div>
4 Réponses :
Déplacer "div class row" une ligne ci-dessous résoudra votre problème.
col-xs- *
n'existe tout simplement pas sur Bootstrap
Les options de grille sont:
col-*
col-sm-*
col-md-*
col-lg-*
col-xl-*
Soucre: https: //getbootstrap.com/docs/4.0/layout/grid/#grid-options
Vous vouliez donc probablement utiliser col- *
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"> <div class="container"> <div class="row"> <div class="col-12 col-sm-4 text-center"> <div class="card"> <div class="card-body"> A </div> </div> </div> <div class="col-6 col-sm-4 text-center"> <div class="card"> <div class="card-body"> B </div> </div> </div> <div class="col-6 col-sm-4 text-center"> <div class="card"> <div class="card-body"> C </div> </div> </div> </div> </div>
.row { background: #E2E2E2; } .card { border: solid 1px #6c757d; }
Oui! En gros la même réponse ^^
Vous utilisez col-xs-
mais il n'existe pas dans Bootstrap version 4.x.
Donc, le petit point d'arrêt est en fait le premier défini mobile et plus.
Si vous avez l'intention d'avoir B & C pour être la moitié de la taille sur mobile, je suggère de le programmer comme ceci :
<div class="container"> <div class="row"> <div class="col-sm-4"> <div class="card text-center"> <div class="card-body"> A </div> </div> </div> <div class="col-6 col-sm-4"> <div class="card text-center"> <div class="card-body"> B </div> </div> </div> <div class="col-6 col-sm-4"> <div class="card text-center"> <div class="card-body"> C </div> </div> </div> </div> </div>
Sinon, déplace le point d'arrêt de sm jusqu'à md.
J'ai testé votre code sur "codepen.io" et fonctionne très bien. Peut-être que le "CDN" utilisé par "jsfiddle" est une version qui ne rend pas les classes de la manière appropriée. Il est important que vous utilisiez un "CDN" ou que vous téléchargiez les fichiers sur votre ordinateur (.js, .css, etc.), qu'ils prennent en charge la version Bootstap que vous utilisez.