kaxigt.com

Jag skriver om webben för webben

10 grundläggande lektioner i CSS

Postad: 7 juni 2009 | CSS-guider | 5 Comments
Lästid: 42 minuter

Välkommen till tredje lektionen!

Font är detsamma som teckensnitt eller typsnitt. Varje dator har sina uppsättningar av fonter och många av dessa är samma, men inte alla. Macdatorerna har i regel sin defaultfont som inte är densamma som i vanliga PCdatorer. Det kan vara bra att veta om man inte har angett ett specifikt typsnitt på sin font. Typsnitt är bland annat utseendet på fonten.

Vi ska börja med att gå igenom följande egenskaper för en font.

Font-family

Genom att ange en specifik font för ett HTML-element så prioriteras denna font. Ofta skriver man in flera alternativ för om din besökares dator inte har stöd för den första fonten som du har angivit så kommer den att avsöka alternativ två.

Finns det stöd så används den fonten, i annat fall söker den vidare tills den hittar en font som överensstämmer med den uppsättning fonter som datorn har.

Använder du däremot ovanliga fonter, eller inte har lagt till några alternativ som exempelvis stöder Macdatorer, så kommer din besökares dator att använda defaultvärdet – defaultfonten – om inte den specifika fonten finns installerad.

Det finns två varianter att kategorisera en font på; dels har vi de som kallas för familjenamn (family-names) och dels de som menas vara släktnamn (generic-family).

Skillnaden dem emellan är att familjenamnen är dem som vi i allmänhet kallar för just font, exempelvis Arial, Verdana eller Georgia. Släktnamnen är däremot en kategori fonter utifrån sitt specifika utseende vilka kan vara serif, sans-serif eller monospace.

När man anger sina fonter så är det en god idé att även avsluta alternativen med ett släktnamn, exempelvis serif, så man vet att sidan kommer att visa en snarlik font från samma ”släkte” om inte besökarens dator har den specifika fonten installerad.

  1. Familjenamnen (font-family) Georgia, Times New Roman och Garamond tillhör samma släktnamn (generic-family) serif. De har ”fötter”.
  2. Familjenamnen Verdana, Arial och Trebuche tillhör släktnamnet sans-serif. De har inga ”fötter”.
  3. Familjenamnen Courier samt Courier New tillhör släktnamnet monospace. Dessa har en fast vidd.

När man anger sina fontalternativ bör man därför hålla sig till de familjenamn som ingår i samma släkte och avsluta alternativen med själva släktnamnet. De familjenamn (fonter) som innehåller blanksteg i sitt namn, exempelvis Times New Roman måste omslutas med citattecken eller enkelfnuttar – ”Times New Roman”.

Css-syntaxen för font-family ser ut så här:

vald selector {font-family: arial, verdana, sans-serif;}

Font-style

Det finns tre egenskaper för fontens stil, det vill säga font-style. Dessa är italic, normal och oblique. Italic betyder kursiv stil medan oblique betyder snedställd.

De är lika till sitt utseende. Den mest vanliga egenskapen är dock ’normal’. Det här är italic och det här är oblique.

CSS-syntax är denna:

vald selector {font-style:italic;}
vald selector {font-style:normal;}
vald selector {font-style:oblique;}

Font-variant

Font-variant ger fonten följande (två) värden, normal|small-caps|initial|inherit;

Small-caps är lite speciell men snyggt att använda till exempelvis rubriker eftersom varje bokstav är ”kapitaliserad”, det vill säga är stor bokstav, men i mindre storlek. Den första bokstaven i varje mening är dock lite större än de andra. Det här är small-caps.

Css-syntax:

vald selector {font-variant:small-caps;}
vald selector {font-style:normal;}

Font-weight

Med font-weight kan man välja hur kraftig eller tjock fonten skall vara. Med följande två värden kan vi väja om en text ska vara bold – tjock – eller normal – det vill säga ha normalläge. Css-syntaxen:

vald selector {font-weight:bold;}
vald selector {font-style:normal;}

En del webbläsare klarar även att läsa in tjockleken på fontens värde om man anger dessa i nummer; 100-900 eller som light, lighter.

Font-size

Slutligen har vi då kommit fram till själva storleken på fonten, det vi kallar för font-size. Det finns fyra alternativ att välja mellan när man vill ange en fonts storlek.

Vi har följande värden: px, em, %, och pt. Vad som kan vara bra att veta är förutsättningarna för storlekarna beroende på vilken typ av värde vi använder.

Em och px

Em och px är dock de två enheter som rekommenderas av W3C när det handlar om en fonts storlek. Men det stannar inte med det.

Beroende på om det är på en skärm (screen) fonten visas eller med något ska skrivas ut (print) bör man välja rätt enhet för fonten.

Rekom­menderad Tillfällig användning Inte rec­om­menderad

Screen (skärm)

em, px, % ex pt, cm, mm, in, pc

Print (utskrift)

em, cm, mm, in, pt, pc, % px, ex

Tabell hämtad från https://www.w3.org/Style/Examples/007/units.en.html

Hur stor är exempelvis em om man jämför med procent(%) eller pixel(px) och pt(point)? Pixel to em har en bra konverterare online och överblick om detta.

CSS-syntax:

p {font-size:12px;}
p {font-size:1em;}
p {font-size:10pt;}
p {font-size:100%;}
Uppdaterat tillägg! Nuförtiden används css-enheterna em, rem, samt vw för screen (skärm – viewport). Läs gärna mer i CSS regerensguider eller den mer omfattande artikeln CSS Unit Guide: enheter, egenskaper och viewport när du är klar med denna guide

En allmän kort och enkel jämförande överblick

8px  = 0.5em   = 50%   = 6pt
9px  = 0.563em = 56.3% = 7pt
10px = 0.625em = 62.5% = 8pt
11px = 0.688em = 68.8% = 8pt
12px = 0.75em  = 75%   = 9pt
13px = 0.813em = 81.3% = 10pt
14px = 0.875em = 87.5% = 11pt
15px = 0.938em = 93.8% = 11pt
16px = 1em     = 100%  = 12pt

Det finns fler omvandlingar hos Px to EM Conversions

px to rem conversion if :root

:root {
font-size: 16px;
}
10px 0.625rem
11px 0.6875rem
12px 0.75rem
13px 0.8125rem
14px 0.875rem
15px 0.9375rem
16px 1rem
17px 1.0625rem
18px 1.125rem
19px 1.1875rem
20px 1.25rem
21px 1.3125rem
22px 1.375rem
23px 1.4375rem
24px 1.5rem
25px 1.5625rem
26px 1.625rem
27px 1.6875rem
28px 1.75rem
29px 1.8125rem
30px 1.875rem
31px 1.9375rem
32px 2rem
33px 2.0625rem
34px 2.125rem
35px 2.1875rem
36px 2.25rem
37px 2.3125rem
38px 2.375rem
39px 2.4375rem
40px 2.5rem
41px 2.5625rem
42px 2.625rem
43px 2.6875rem
44px 2.75rem
45px 2.8125rem
46px 2.875rem
47px 2.9375rem
48px 3rem
49px 3.0625rem
50px 3.125rem
51px 3.1875rem
52px 3.25rem
53px 3.3125rem
54px 3.375rem
55px 3.4375rem
56px 3.5rem
57px 3.5625rem
58px 3.625rem
59px 3.6875rem
60px 3.75rem
61px 3.8125rem
62px 3.875rem
63px 3.9375rem
64px 4rem

Källa: http://www.standardista.com/px-to-rem-conversion-if-root-font-size-is-16px/

Egenskaper för font (typsnitt)

font-family specificerar en förvald prioriterad lista med fonter, ex: arial, times, helvetica
font-style anger fontens stil med följande värden: normal, italic
font-weight anger fontens tjocklek med följande värden: bold, light, integer, bolder, lighter, normal
font-size anger fontens storlek med följande värden: px, em, %, pt
font-variant ger fonten värdet normal, small-caps

Egenskaperna för font kan användas som shorthand declarationgroups och ska då användas i denna ordning:

font:italic normal 11px/150% arial, times, helvetica;

Som css-syntax:

font-style - font-variant - font-weight - font-size - font-family

I lektion 4 ska vi se hur vi formaterar och sätter stil på själva texten. Välkommen dit!