„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie erstelle ich ein flüssiges 3- bis 1-Spalten-Layout ohne Medienabfragen?

Wie erstelle ich ein flüssiges 3- bis 1-Spalten-Layout ohne Medienabfragen?

Veröffentlicht am 18.11.2024
Durchsuche:877

How to Create a Fluid 3-Column to 1-Column Layout Without Media Queries?

Ohne Medienabfragen: Erreichen eines flüssigen 3-Spalten-Desktop-Layouts zu einem 1-Spalten-Mobillayout

Traditionelle Medienabfragen spielen eine entscheidende Rolle bei der Anpassung Website-Layouts für verschiedene Bildschirmgrößen. Um jedoch ein wirklich flüssiges und ansprechendes Design zu erstellen, besteht der Wunsch, alternative Lösungen zu erkunden, die Medienabfragen überflüssig machen.

Stellen Sie sich eine Website mit einem 3-Spalten-Layout auf Desktops vor:

   |  |  |
---| ---| ---|
| 1 | 2 | 3 |

Auf Mobilgeräten sollte sich das Layout jedoch in eine einzelne Spalte umwandeln:

|
---|
| 1 |
| 2 |
| 3 |

Um dies dynamisch zu erreichen, kommen die leistungsstarken Funktionen von CSS zur Rettung:

Grid and Clamp

.grid-wrapper {
   display: grid;
   gap: 15px;
   grid-template-columns: repeat(clamp(1, calc(100% - 500px), 3), 33%);
}

Die Funktion „repeat()“ erstellt eine bestimmte Anzahl von Spalten und „clamp()“ stellt sicher, dass mindestens eine Spalte vorhanden ist, wenn das Ansichtsfenster unter 500 Pixel verkleinert wird.

Flexbox und negativer Rand

.flex-container {
   display: flex;
   flex-direction: row;
}

.flex-item {
   width: 33%; /* initial width */
   margin-right: -15px; /* negative margin to facilitate overlapping */
   background-color: red;
}

/* Breakpoint rule for smaller screens */
@media screen and (max-width: 500px) {
   .flex-item {
      margin-right: 0; /* remove negative margin on mobile */
   }
}

Dieser Ansatz stellt sicher, dass Elemente auf größeren Bildschirmen nebeneinander ausgerichtet werden, auf schmaleren jedoch vertikal gestapelt werden. Der negative Rand erzeugt zunächst eine Überlappung, die durch Entfernen auf kleineren Bildschirmen korrigiert wird.

Fazit

Durch die Nutzung von Raster, Klemme, Flexbox und negativen Rändern ist dies möglich um flüssige Layouts zu erstellen, die sich nahtlos zwischen mehreren Spalten und einer einzelnen Spalte anpassen, sodass keine Medienabfragen für grundlegende Layoutänderungen erforderlich sind.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3