Ich verwende CSS-Raster, um die Größe der Spalten zu ändern und sie in neue Zeilen zu verschieben, wenn sie nicht passen. Hier ist der Code, der alles erklärt:
.tiles-container { display: grid; grid-gap: 6rem; grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 2fr)); } a { background: red; height: 100px; }
<div class="tiles-container"> <a></a> <a></a> <a></a> <a></a> </div>
grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 2fr));
Was ich nun vermeiden möchte, ist, nur eine (einzelne) Spalte in eine neue Zeile zu verschieben. Stattdessen wird es früher ausgeblendet und die beiden Spalten werden zusammen verschoben.
Um es intuitiver zu erklären, ist Folgendes akzeptabel:
█ █ █ █
Außerdem:
█ █ █
██
Außerdem:
██
██
Das ist inakzeptabel:
█ █ █
█
Ich möchte hier unnötige Medienanfragen vermeiden. Das ist mein Code: https://jsfiddle.net/tucado/0czokyxa/3/
如果有人遇到同样的问题,这里是解决方案:https://jsfiddle.net/ tucado/0czokyxa/5/
和CSS:
谢谢@Temani-Afif