Box model
Allt i CSS har en lÄda omkring sig, dÀrför Àr det centralt att förstÄ hur detta fungerar för att kunna skapa layout med CSS. Se Fig 1.
Vad Àr box model
Förenklat Àr det hur mycket plats element tar pÄ en webbsida, hur stort det Àr. Men hur detta rÀknas ut och pÄverkas av andra element Àr komplicerat. Elementets box model Àr uppdelad i flera olika delar, se fig 1. Elementets storlek Àr summan av alla delarna.
Det Àr vÀldigt viktigt att förstÄ elements storlek och box model nÀr du till exempel försöker sÀtta flera element bredvid varandra eller nÀr du har element som ska fylla en hel sida. Det Àr inte helt ovanligt att det dyker upp scrollbars dÀr du inte önskar dem för att elementet Àr 100% stort + padding osv.
Content
De/det element eller innehÄll(engelska content) som finns i elementet. InnehÄllet styr elementets storlek.
Padding
Runt elementets innehÄll finns det en padding pÄ alla sidor. Denna padding Àr tomt utrymme som skapar luft runt elementets innehÄll.
För att rÀkna ut div-elementets bredd i exemplet hÀr ovan sÄ rÀknar vi ihop elementets storlek + padding. Det blir 100% + 5rem * 2. Paddingen pÄ sidan om elementet dubblas eftersom den finns pÄ bÄda sidorna. 5 rem Àr med standardstorleken 16px alltsÄ 80px, detta dubblas och elementets storlek blir 100% av parent + 160px, nÄgot som med största sannolikhet resulterar i att elementet Àr bredare Àn önskat.
Border
Om elementet har en ram sÄ lÀggs Àven det till i elementets storlek.
Margin
Runt elementet finns slutligen en marginal som omger elementet. Detta fungerar liknande padding, men Àr utanför elementet och inte innanför. MÄttet dubblas Àven det och lÀggs pÄ padding och border.
För att rÀkna ut div-elementets bredd frÄn exemplet ovan sÄ tar vi, content + padding * 2 + border * 2 + margin * 2. Det blir alltsÄ (40 * 16) + (1 + 1) * 16 + (1 + 1) + (2 + 2) * 16 = 738px.
Testa att rÀkna ut höjden och anvÀnd utvecklarverktygen i en webblÀsare för att se utrÀknad(engelska computed) höjd och bredd.
Block och inline-element
Se avsnittet frÄn HTML-kapitlet, Block och inline-element.
Display typer
LĂ€s mer
Last updated