Hvordan bruke grid?
<section class="pkt-grid">
<div class="pkt-cell pkt-cell--span3">.pkt-cell pkt-cell--span3</div>
<div class="pkt-cell pkt-cell--span3">.pkt-cell pkt-cell--span3</div>
<div class="pkt-cell pkt-cell--span3">.pkt-cell pkt-cell--span3</div>
<div class="pkt-cell pkt-cell--span3">.pkt-cell pkt-cell--span3</div>
</section>
Container
Grid containeren er brukt til Ä holde pÄ, gi luft til og plassere innholdet i en layout pÄ siden. Denne har klassen pkt-grid
. Default bredde pÄ containeren er 100%.
Dersom du Þnsker spacing pÄ venstre og hÞyre side av containeren kan du enten bruke modifier pkt-grid--padding
(16px pÄ smÄ skjermer og 32px pÄ store) eller bruke spacing-hjelpeklassene.
Med gridsystemet angir man ikke kolonner og rader, men celler.
En grid-celle er et rom du plasserer ditt innhold inni. Cellen fungerer som en celle i en tabell eller et regneark. Cellen fyller plassen pÄ raden sÄfremt det er plass, hvis ikke faller de automatisk ned til neste rad. Cellene i vÄrt gridsystem skal ha klassen pkt-cell
.
Hver celle tar opp 1/12 plass av GridContaineren, bruk modifiers om du Ăžnsker andre bredder.
Vi bruker en 12 kolonnes gridsystem basert pÄ CSS Grid Layout. Det anbefales sterkt Ä studere lenkene i bunnen av siden for Ä lÊre mer om CSS Grid Layout
Modifiers og helpers
pkt-grid
Type | Modifier / Helper | Default | Beskrivelse |
---|---|---|---|
Bredde | --phablet , --tablet , --tablet-big , --laptop , --desktop , --full | pkt-grid--full | Maksbredde pÄ containeren |
Justering | --left , --right , --center | pkt-grid--center | Justér container med margins |
Gutters / Gap | --gap-{spacing} , --colgap-{spacing} , --rowgap-{spacing} , --gap-{spacing}-{breakpoint}-up , --colgap-{spacing}-{breakpoint}-up , --rowgap-{spacing}-{breakpoint}-up | 16px / 32px | Les mer om gap under. |
Padding | --padding | ingen | Legger til 16px / 32px padding pÄ venstre og hÞyre side av grid-container |
Margins | mx-size-16 , mx-size-32-tablet-up | auto | Bruk vÄre hjelpeklasser for spacing |
pkt-cell
Type | Modifier / Helper | Default | Beskrivelse |
---|---|---|---|
Bredde | --span{n} , --span{n}-{breakpoint}-up | pkt-cell--span1 | Antall kolonner cellen skal gÄ over. Span gÄr fra 1 til 12 |
Justering | --left , --right , --center , --top , --center-vertical , --bottom | justify-self: auto | Justér innholdet i celle |
pkt-gap
Gap er rommet mellom to kolonner, ogsÄ kalt gutters. Default er disse:
- 16px for visningsomrÄde 767px og smalere.
- 32px for visningsomrÄde 768px og bredere.
Modifier / Helper | Beskrivelse |
---|---|
--gap-{spacing} | Gap mellom kolonner og rader. Alle verdier definert i spacing er tillatt. |
--colgap-{spacing} | Gap mellom kolonner. Alle verdier definert i spacing er tillatt. |
--rowgap-{spacing} | Gap mellom rader. Alle verdier definert i spacing er tillatt. |
--gap-{spacing}-{breakpoint}-up | Gap mellom kolonner og rader fra et breakpoint og oppover. |
--colgap-{spacing}-{breakpoint}-up | Gap mellom kolonner fra et breakpoint og oppover. |
--rowgap-{spacing}-{breakpoint}-up | Gap mellom rader fra et breakpoint og oppover. |
Eksempler
Responsiv grid
Tabellen under illustrerer hvordan pkt-grid
oppfĂžrer seg ved ulike breakpoints.
Dersom vi Ăžnsker at innholdet skal skalere med skjermbredden jobber vi med et fluid grid system
. Responsivt design benytter seg av denne mÄten Ä designe pÄ for Ä utnytte den tilgjengelige skjermplassen pÄ en hvilken som helst enhet. Fluid betyr at kolonnebredden hele tiden vil Þke/minke i stÞrrelse i det visningsomrÄdet endrer seg. Gap og marginer forblir samme stÞrrelse.
Mobile | Phablet | tablet | tablet-big | laptop | desktop | |
---|---|---|---|---|---|---|
pkt-grid--phablet | 100% | 36rem | 36rem | 36rem | 36rem | 36rem |
pkt-grid--tablet | 100% | 100% | 48rem | 48rem | 48rem | 48rem |
pkt-grid--tablet-big | 100% | 100% | 100% | 64rem | 64rem | 64rem |
pkt-grid--laptop | 100% | 100% | 100% | 100% | 80 rem | 80rem |
pkt-grid--desktop | 100% | 100% | 100% | 100% | 100% | 100rem |
pkt-grid--full | 100% | 100% | 100% | 100% | 100% | 100% |
âA fluid container will stretch to the outer boundaries of its outermost parent. Often, this is the browser, but in cases where a fluid grid is inside of a container between the browser and itself, it can still be fluid and 100% the width of its parent, but maybe not the browser.â
<section class="pkt-grid pkt-grid--phablet">
<div class="pkt-cell pkt-cell--span12">.pkt-grid--phablet</div>
</section>
Justering av grid
Dersom containeren ikke tar full bredde, er det mulighet til Ă„ justere containeren til venstre, midt eller hĂžyre. Default er venstre.
<section class="pkt-grid pkt-grid--phablet pkt-grid--left">
<div class="pkt-cell pkt-cell--span12">.pkt-grid--left</div>
</section>
Responsive celler
Lag en responsive layout ved Ä angi hvor stor andel av siden innholdet skal ha pÄ ulike skjermstÞrrelser.
- Full bredde pÄ mobil.
- 4 celler fordelt pÄ to rader fra tablet og opp
Resize nettleservinduet for Ă„ se hvordan det oppfĂžrer seg.
<section class="pkt-grid">
<div class="pkt-cell pkt-cell--span12 pkt-cell--span6-tablet-up">1</div>
<div class="pkt-cell pkt-cell--span12 pkt-cell--span6-tablet-up">2</div>
<div class="pkt-cell pkt-cell--span12 pkt-cell--span6-tablet-up">3</div>
<div class="pkt-cell pkt-cell--span12 pkt-cell--span6-tablet-up">4</div>
</section>
Automatisk wrapping
I dette eksempelet gÄr ikke breddene opp i 12, og de wrappes derfor automatisk ned pÄ linjen under. De to siste cellene faller dog fint pÄ plass.
<section class="pkt-grid">
<div class="pkt-cell pkt-cell--span6">6 kolonner</div>
<div class="pkt-cell pkt-cell--span7">7 kolonner</div>
<div class="pkt-cell pkt-cell--span8">8 kolonner</div>
<div class="pkt-cell pkt-cell--span4">4 kolonner</div>
</section>
Responsiv gap/gutter
En gap/ gutter pÄ 32px pÄ tablet og oppover. 16px under.
.pkt-gridâgap-size-16 pkt-gridâgap-size-32-tablet-up
.pkt-gridâgap-size-16 pkt-gridâgap-size-32-tablet-up
.pkt-gridâgap-size-16 pkt-gridâgap-size-32-tablet-up
.pkt-gridâgap-size-16 pkt-gridâgap-size-32-tablet-up
<section class="pkt-grid pkt-grid--gap-size-16 pkt-grid--gap-size-32-tablet-up">
<div class="pkt-cell pkt-cell--span3">
.pkt-grid--gap-size-16 pkt-grid--gap-size-32-tablet-up
</div>
<div class="pkt-cell pkt-cell--span3">
.pkt-grid--gap-size-16 pkt-grid--gap-size-32-tablet-up
</div>
<div class="pkt-cell pkt-cell--span3">
.pkt-grid--gap-size-16 pkt-grid--gap-size-32-tablet-up
</div>
<div class="pkt-cell pkt-cell--span3">
.pkt-grid--gap-size-16 pkt-grid--gap-size-32-tablet-up
</div>
</section>