Typografi
Ulike virksomheter, team og løsniner har ulike behov. Noen team jobber med løsninger knyttet opp mot oslo.kommune.no og trenger derfor de samme tekststilene som de bruker der. Andre jobber med mer frittstående løsninger og ønsker å ha større kontroll på elementer som responsivitet og hvilke stiler de bruker hvor.
For å støtte begge deler har vi et sett med ulike tekst-størrelser du kan ta i bruk etter ditt behov.
- Du kan lese mer om typografien i Oslo kommunes designmanual
- Du kan laste ned og lese mer om Oslo kommunes font her
Ting å huske på når du jobber med typografien vår
- Du bør unngå å bruke bare store bokstaver i tekst. Det gir dårligere lesbarhet. Det samme gjelder kursiv som ikke bør brukes i overskrifter eller store tekstmengder
- Ulike vekter kan brukes for å skape kontrast i teksten
- Alle basekomponentene i Punkt kommer med Oslo sans 18px
- Det skal ikke brukes større tekst enn 54px
Regular
Stilnavn | Vekt | Størrelse | Linjehøyde | Kniping |
---|---|---|---|---|
Text 54 - regular | regular | 54px | 82px | -0.4px |
Text 40 - regular | regular | 40px | 60px | -0.2px |
Text 36 - regular | regular | 36px | 54px | -0.2px |
Text 30 - regular | regular | 30px | 44px | -0.2px |
Text 28 - regular | regular | 28px | 42px | -0.2px |
Text 26 - regular | regular | 26px | 40px | -0.2px |
Text 24 - regular | regular | 24px | 36px | -0.2px |
Text 22 - regular | regular | 22px | 34px | -0.2px |
Text 20 - regular | regular | 20px | 32px | -0.2px |
Text 18 - regular | regular | 18px | 28px | -0.2px |
Text 16 - regular | regular | 16px | 24px | -0.2px |
Text 14 - regular | regular | 14px | 22px | -0.2px |
Text 12 - regular | regular | 12px | 20px | -0.2px |
Light
Stilnavn | Vekt | Størrelse | Linjehøyde | Kniping |
---|---|---|---|---|
Text 54 - light | light | 54px | 82px | -0.4px |
Text 40 - light | light | 40px | 60px | -0.2px |
Text 36 - light | light | 36px | 54px | -0.2px |
Text 30 - light | light | 30px | 44px | -0.2px |
Text 28 - light | light | 28px | 42px | -0.2px |
Text 26 - light | light | 26px | 40px | -0.2px |
Text 24 - light | light | 24px | 36px | -0.2px |
Text 22 - light | light | 22px | 34px | -0.2px |
Text 20 - light | light | 20px | 32px | -0.2px |
Text 18 - light | light | 18px | 28px | -0.2px |
Text 16 - light | light | 16px | 24px | -0.2px |
Text 14 - light | light | 14px | 22px | -0.2px |
Text 12 - light | light | 12px | 20px | -0.2px |
Medium
Stilnavn | Vekt | Størrelse | Linjehøyde | Kniping |
---|---|---|---|---|
Text 54 - medium | medium | 54px | 82px | -0.4px |
Text 40 - medium | medium | 40px | 60px | -0.2px |
Text 36 - medium | medium | 36px | 54px | -0.2px |
Text 30 - medium | medium | 30px | 44px | -0.2px |
Text 28 - medium | medium | 28px | 42px | -0.2px |
Text 26 - medium | medium | 26px | 40px | -0.2px |
Text 24 - medium | medium | 24px | 36px | -0.2px |
Text 22 - medium | medium | 22px | 34px | -0.2px |
Text 20 - medium | medium | 20px | 32px | -0.2px |
Text 18 - medium | medium | 18px | 28px | -0.2px |
Text 16 - medium | medium | 16px | 24px | -0.2px |
Text 14 - medium | medium | 14px | 22px | -0.2px |
Text 12 - medium | medium | 12px | 20px | -0.2px |
Bold
Stilnavn | Vekt | Størrelse | Linjehøyde | Kniping |
---|---|---|---|---|
Text 54 - bold | bold | 54px | 82px | -0.4px |
Text 40 - bold | bold | 40px | 60px | -0.2px |
Text 36 - bold | bold | 36px | 54px | -0.2px |
Text 30 - bold | bold | 30px | 44px | -0.2px |
Text 28 - bold | bold | 28px | 42px | -0.2px |
Text 26 - bold | bold | 26px | 40px | -0.2px |
Text 24 - bold | bold | 24px | 36px | -0.2px |
Text 22 - bold | bold | 22px | 34px | -0.2px |
Text 20 - bold | bold | 20px | 32px | -0.2px |
Text 18 - bold | bold | 18px | 28px | -0.2px |
Text 16 - bold | bold | 16px | 24px | -0.2px |
Text 14 - bold | bold | 14px | 22px | -0.2px |
Text 12 - bold | bold | 12px | 20px | -0.2px |
Eksempel på bruk
Her vil du se noen anbefalinger på bruk av heading, ingress og body både på mobil og desktop:
Desktop
Type | Stilnavn |
---|---|
Heading 1 | Text 54 - regular |
Heading 2 | Text 36 - regular |
Heading 3 | Text 30 - regular |
Heading 4 | Text 24 - medium |
Heading 5 | Text 22 - medium |
Ingress | Text 24 - light |
Body | Text 16 - light |
Mobil
Type | Stilnavn |
---|---|
Heading 1 | Text 36 - regular |
Heading 2 | Text 26 - regular |
Heading 3 | Text 22 - regular |
Heading 4 | Text 18 - medium |
Ingress | Text 20 - light |
Body | Text 16 - light |
CSS-klasser
Ta i bruk våre tekst-stiler ved bruk av klasser.
.pkt-txt-54
.pkt-txt-30-medium
.pkt-txt-24-medium
.pkt-txt-16-light
<h1 class="pkt-txt-54">.pkt-txt-54</h1>
<h2 class="pkt-txt-30-medium">.pkt-txt-30-medium</h2>
<h3 class="pkt-txt-24-medium">.pkt-txt-24-medium</h3>
<p class="pkt-txt-16-light">.pkt-txt-16-light</p>
CSS-klassene vil style din tekst slik:
$pkt-styles: (
'pkt-txt-54': (
'size': 'size-54',
'weight': 'regular',
'letter-spacing': 'tighter',
'line-height': 'lh-82',
),
SCSS mixin
Du kan også ta i bruk tekst-stilene med mixin get-text
:
@use "@oslokommune/punkt-css/dist/scss/abstracts/mixins/typography" as *;
.page-header {
@include get-text("pkt-txt-40-light");
margin-top: 0.6em;
margin-bottom: 0.4em;
@include bp("tablet-up") {
@include get-text("pkt-txt-54");
}
}
SCSS funksjon
Du kan også hente typografiverdier med SCSS map.get
-funksjonen.
@use "sass:map";
@use "@oslokommune/punkt-css/dist/scss/abstracts/variables";
.wrapper {
font-size: map.get(variables.$font-size, "size-54");
}
Se alle tilgjengelige typografi-variabler i koden på GitHub
Globale verdier
Per nå setter rammeverket noen globale verdier for luft, typografi, og lenker. Det er det eneste stedet hvor dette gjøres utenom _normalise.scss
. Hva gjør de globale verdiene?
- Tar i bruk Oslo kommunes definerte font stack, som inkluderer fonten Oslo Sans.
- Setter default
font-size
,font-weight
,line-height
ogletter-spacing
i hht Oslo kommunes visuell-profil. - Setter global lenkestil.
Normalise
Gjennom bruk av _normalise.scss
så settes alle HTML headinger til brødtekst.
Tanken er at man skal sette headinger i henhold til applikasjonens behov. Lager du nettside er disse annerledes enn et admin-grensesnitt. Noen vil ha responsive fonter, andre ikke. Derfor er dette opp til dere å definere sammen med designerne.
h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: normal;
font-size: 1rem;
}
Defaultstiler
Dette er vanlig brødtekst.
Dette er skrevet i kursiv.
Dette er skrevet i liten tekst.
Dette er skrevet i fet tekst.
<p>Dette er vanlig brødtekst.</p>
<p><em>Dette er skrevet i kursiv</em>.</p>
<p><small>Dette er skrevet i liten tekst</small>.</p>
<p><strong>Dette er skrevet i fet tekst</strong>.</p>
Universell utforming
- Vær forsiktig ved bruk av light-fonten. Denne kan bli for tynn i noen sammenhenger.
- Kontrast mellom tekst og bakgrunn skal være 4.5:1
- Alle tekstutdrag skal ha en beskrivende overskrift eller mellomtittel.
- Rekkefølgen på header-tagger skal være i riktig rekkefølge (h1,h2 osv..)
- Overskrifter og ledetekster skal være klare og beskrivende
- Farge skal ikke være eneste meningsbærer