<main>
<header>
<nav>
<footer>
<article>
<section>
<aside>
<header>
und <head>
?❓ Mit welchem CSS-Code kann man die einzelnen Seitenbereiche einfärben?
Auf diese HTML5-Strukturelemente kann man ganz einfach via Typen-Selektor zugreifen:
header { background-color: red; }
nav { background-color: yellowgreen; }
main { background-color: yellow2; }
article { background-color: orange; padding: 5px; }
section { background-color: tan; }
aside { background-color: magenta; padding: 5px; }
footer { background-color: cyan; }
➡ Try It
❓ Wie kann man einzelne Kasten nebeneinander setzen?
Bestimme das HTML-Element, das als Flex-Container agieren soll.
Setze die CSS-Eigenschaft:
display: flex;
➡ Danach werden alle HTML-Elemente, die (unmittelbar) innerhalb des Flex-Containers stehen zu Flex-Items und ausgerichtet.
Für die Flex-Container:
• flex-wrap: wrap;
|
–> |
Flex-Items werden umgebrochen. Standard ist nowrap
|
Für die Flex-Items, z.B.:
• flex: 1;
|
–> |
steuert die Grösse des Items Standard: 1 für alle Items
|
|
• flex: 2;
|
(2 –> doppelt so breit) |
flex
ist eine Shorthand-Eigenschaft mit 3 Zahlen:
• flex: 1 1 0%;
|
–> |
(Standard) Normale Skalierung, entspricht flex: 1
|
• flex: 1 1 320px;
|
–> | das Item bekommt eine Basisbreite von 320px |
main { display: flex; flex-wrap: wrap; }
article { flex: 3; }
aside { flex: 1 1 330px; }
➡ Try It
❓ Welches Element ist jetzt der Flex-Container?
<header>
,
<nav>
,
<main>
,
<footer>
,
also der Wrapper (resp. Body, wenn kein Wrapper verwendet) ist nun der Flex-Container
<header>
<nav>
<main>
<footer>
➡ Try It ☹☹
❓ Was muss man noch ändern?
<nav>
kann mittels Flexbox gestaltet werden.
<ul>
,
Flex-Items sind die <li>
.
➡ Try It
{ display: flex; }
{ flex: 1; }