Flexbox, eller Flexbox Layout, er en CSS-teknikk som gjør det enklere å lage fleksible og responsive layoutstrukturer. Flexbox gir deg kontroll over hvordan elementer skal distribueres og justeres i en container, og det er spesielt nyttig for å håndtere layout i en-dimensjonale rekkefølger – enten horisontalt eller vertikalt.
Flexbox brukes på en beholder (container) som inneholder flex-elementer. Flex-elementene vil automatisk tilpasse seg og fordele plassen i henhold til de spesifikke egenskapene du angir i CSS.
display: flex;
display: inline-flex;
For å bruke Flexbox må du først definere en flex container ved å bruke display: flex;:
.container { display: flex; }
flex-direction
row
column
row-reverse
column-reverse
.container { flex-direction: row; }
flex-wrap
nowrap
wrap
wrap-reverse
.container { flex-wrap: wrap; }
flex-flow: En kortform for å sette både flex-direction og flex-wrap.
flex-flow
.container { flex-flow: row wrap; }
justify-content
flex-start
center
space-between
space-around
space-evenly
.container { justify-content: center; }
align-items
stretch
flex-end
baseline
.container { align-items: center; }
align-content
.container { align-content: space-between; }
flex-grow
0
.item { flex-grow: 2; }
flex-shrink
1
.item { flex-shrink: 1; }
flex-basis
auto
.item { flex-basis: 200px; }
flex
flex: 1 1 200px;
flex-grow: 1
flex-shrink: 1
flex-basis: 200px
.item { flex: 1 1 200px; }
align-self
.item { align-self: center; }
Her er et eksempel på en enkel layout med Flexbox:
<!DOCTYPE html> <html lang="no"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Flexbox Layout</title> <link rel="stylesheet" href="style.css"> </head> <body> <div class="container"> <div class="item">1</div> <div class="item">2</div> <div class="item">3</div> </div> </body> </html>
.container { display: flex; flex-direction: row; /* Plasserer elementene horisontalt */ justify-content: space-around; /* Fordeler elementene med lik avstand rundt */ align-items: center; /* Justerer elementene i midten av containerens høyde */ height: 100vh; /* Full høyde på visningsvinduet */ background-color: lightgray; } .item { background-color: coral; color: white; padding: 20px; width: 100px; text-align: center; }
Flexbox gir deg kraftige verktøy for å lage fleksible og responsive layoutstrukturer. Ved å bruke flex-containerens egenskaper (flex-direction, flex-wrap, justify-content, align-items, align-content) og flex-item-egenskaper (flex-grow, flex-shrink, flex-basis, align-self), kan du enkelt kontrollere hvordan elementene plasseres og tilpasser seg i en beholder.
Her er et interaktivt eksempel på en enkel flexbox-layout. Prøv å endre CSS-koden for å se hvordan de ulike flex-egenskapene endrer layouten.
See the Pen enkel-flexbox-layout by kadalsaune (@kadalsaune) on CodePen.
1. Lage en webside i VS Code 2. Lage en webside med HTML 3. Hvordan bruke CSS til å endre utseend...
© 2024 • Contents under CC-BY-NC • Maintained by Karl Arne Dalsaune