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>