/* grid */ * { box-sizing: border-box; } body { margin: 0; font-family: Arial; } .header { text-align: center; padding: 32px; } .row { display: -ms-flexbox; /* IE10 */ display: flex; -ms-flex-wrap: wrap; /* IE10 */ flex-wrap: wrap; padding: 0 4px; } /* Create four equal columns that sits next to each other */ .column { -ms-flex: 25%; /* IE10 */ flex: 25%; max-width: 25%; padding: 0 4px; } .column img { margin-top: 8px; vertical-align: middle; width: 100%; } /* Responsive layout - makes a two column-layout instead of four columns */ @media screen and (max-width: 800px) { .column { -ms-flex: 50%; flex: 50%; max-width: 50%; } } /* Responsive layout - makes the two columns stack on top of each other instead of next to each other */ @media screen and (max-width: 600px) { .column { -ms-flex: 100%; flex: 100%; max-width: 100%; } } /* Nettoyage des styles pour éviter les conflits Bootstrap sur le reste de la page */ body { overflow-x: hidden; /* Sécurité anti-scroll horizontal */ margin: 0; padding: 0; } .custom-grid-container { width: 100%; padding: 0 15px; /* Évite que les images collent aux bords de l'écran */ box-sizing: border-box; } /* Clearfix pour contenir les éléments en float */ .custom-grid-container::after { content: ""; display: table; clear: both; } .custom-column { float: left; width: 25%; box-sizing: border-box; padding: 5px; /* Espacement entre les images */ } .custom-column img { width: 100%; display: block; margin-bottom: 10px; } h1 { padding: 20px 15px; margin: 0; }