Maison >interface Web >tutoriel CSS >Comment puis-je modifier l'ordre des divs avec CSS en fonction de la taille de l'écran ?

Comment puis-je modifier l'ordre des divs avec CSS en fonction de la taille de l'écran ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-04 11:41:34653parcourir

How Can I Change the Order of Divs with CSS Based on Screen Size?

Modifier l'ordre des divisions avec CSS en fonction de la largeur de l'appareil

Lors de la création de sites Web réactifs, il est courant de rencontrer des difficultés dans la gestion de l'ordre des éléments, car la taille de l'écran change. Bien que des solutions simples existent pour deux ou trois divs, l'ordre devient plus complexe avec un nombre croissant d'éléments.

Pour résoudre ce problème, la spécification flexbox de CSS offre une solution puissante utilisant les propriétés order et flex-flow. Ces propriétés permettent un classement flexible des éléments tout en conservant leur affichage en bloc en ligne.

La solution suivante satisfait aux exigences mentionnées dans la question :

  • Les éléments sont initialement affichés sous forme de ligne.
  • Lorsque la largeur de l'écran tombe en dessous d'un point d'arrêt défini, ils passent à une disposition en colonnes.
  • L'ordre des éléments est modifié dans la disposition en colonnes. pour créer l'arrangement souhaité.

Structure HTML :

<div class="container">
    <div class="one">I'm first</div>
    <div class="two">I'm second</div>
    <div class="three">I'm third</div>
    <div class="four">I'm fourth</div>
    <div class="five">I'm fifth</div>
</div>

Styles CSS :

.container div {
    width: 100px;
    height: 50px;
    display: inline-block;
}

.one { background: red; }
.two { background: orange; }
.three { background: yellow; }
.four { background: green; }
.five { background: blue; }

@media screen and (max-width: 531px) {
    .container {
        display: flex;
        flex-flow: column;
    }
    .five { order: 1; }
    .four { order: 2; }
    .three { order: 3; }
    .two { order: 4; }
    .one { order: 5 }
}

Cette solution garantit que lorsque la largeur de l'écran devient trop étroite, les divs se réorganisent en fonction de l'ordre spécifié, tout en conservant leur disposition en blocs en ligne et conservant leur contenu et leurs dimensions.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn