11. Unterrichtsblock

CSS Logo

Inhaltsverzeichnis

CSS Grid

Viele Webseiten basieren auf einer Rasteransicht (englisch „grid“), was bedeutet, dass die Seite in Spalten unterteilt ist:

Die Verwendung einer Rasteransicht ist beim Entwerfen von Webseiten sehr hilfreich. Es erleichtert das Platzieren von Elementen auf der Seite.

CSS display: grid;

1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9

Aufgabe

Probiere display: grid; im Code Editor aus

Flexbox

Vor dem Flexbox-Layoutmodul gab es vier Layoutmodi:

  • block für Abschnitte auf einer Webseite
  • inline, für Text
  • table, für zweidimensionale Tabellendaten
  • position, für die explizite Position eines Elements

Das Flexible-Box-Layout-Modul erleichtert das Entwerfen einer flexiblen, responsiven Layoutstruktur ohne Verwendung von Float oder Positionierung.

Flexbox-Elemente

Um mit der Verwendung des Flexbox-Modells zu beginnen, müssen wir zunächst einen Flex-Container definieren:

.flex-container {
  display: flex;
  background-color: pink;
}

.flex-container > div {
  background-color: #f1f1f1;
  margin: 10px;
  padding: 20px;
  font-size: 30px;
<div class="flex-container">
  <div>A</div>
  <div>B</div>
  <div>C</div>
  <div>D</div> 
  <div>E</div> 
</div>
A
B
C
D
E

Ein Flexbox-Layout benötigt ein Eltern-Element mit der display Eigenschaft und dem Wert flex.
Direkte Kind-Elemente des flexiblen Eltern-Elements werden dadurch automatisch auch flexibel

Das obige Element repräsentiert einen Flex-Container (der rötliche Bereich) mit drei Flex-Elementen.

Aufgabe

Probiere display: flex; im Code Editor aus

Film

Aufgabe

Baue eine Seite mit 2 Spalten. Diese sollen einmal über Flex-Box und einmal über Grid responsiv gemacht werden.
Eine Spalte soll dabei 2/3 der Seite einnehmen und als den HTML-Tag <main> erhalten
Die andere Spalte soll 1/3 der Seite einnehmen und den HTML-Tag <aside> erhalten
Auf Mobilgeräten sollen die Spalten untereinander angezeigt werden