Doboz modell

Tömbszerű (vagy blokkos) elemek jellemzői

A blokkos elemek vízszintesen kitöltik, a rendelkezésre álló helyet, mellettük más elem nem lehet, az elem maga előtt és után sortörést hoz létre. Magasságuk a tartalmuktól függ, a tartalom tolja szét a blokkos elemeket függőlegesen.

A böngészők blokkos elemként jelenítik meg az ebbe a kategóriába tartozó HTML elemeket - lásd HTML elemek listája.

CSS-el fel lehet ruházni ezzel a megjelenítési móddal a nem blokkos elemeket is.

span {
    display: block;
}

Tartalom - content

Ha külön nem határozzuk meg egy blokkos elem szélességét, és magasságát, az elem 100% széles lesz, vízszintesen teljesen kitölti a rendelkezésre álló helyet. Az elem magasságát a tartalma határozza meg, például a benne lévő szöveg. Tartalom hiányában az elem 0px magasságú.

A blokkos elemeknek megadhatjuk a szélességégét, magasságát a width és a height CSS tulajdonságokkal, ez felülbírálja az alapbeállításokat, az elem magassága függetlenül méretezhető a tartalmától, szélessége függetlenül méretezhető a rendelkezésre álló helytől.

Alapestben a böngésző határozza meg a width és height értékét, ez az auto, vagyis a fentebb taglalt elvek alapján számítja a szélességet, és magasságot.

A szélességnek, és a magasságnak megadhatunk minimum és maximum értéket is:

A min-height, és min-width CSS tulajdonságokban meghatározott érték alá nem csökken az elem szélessége és magassága (alapértéke 0px).

A max-height, és max-width CSS tulajdonságokban meghatározott érték fölé nem növekszik az elem szélessége és magassága (alapértéke none, vagyis nincs felső méret korlát).

Belső margó - padding

A blokkos elemeknek meg lehet adni belső margót a padding CSS tulajdonsággal, ez felveszi a háttér színét, és belső eltartása hozzáadódik a tartalom szélességéhez és magasságához (alapértéke 0px), a tartalom és az oldal széle között képezve eltartást (úgy kell elképzelni, mint egy hagyományos képkeret esetén a paszpartut a festmény és maga a képkeret között).

A belső margó a tartalom, és az elem széle között képez eltartást.

A padding -et megadhatjuk külön külön oldalanként, a padding-top, padding-right, padding-bottom és badding-left CSS tulajdonságokkal:

Vagy gyorsírásos módszerrel, felsorolhatjuk az összes oldalt is (fentről kezdve az óra járásával megegyező irányban következnek az oldalak):

Meghatározhatjuk egy érték megadásával az összes oldal padding értékét is, feltételezve, hogy az összes oldal belső margójának mérete megegyezik:

Keret - border

A blokkos elemeknek lehet kerete, a keret megjelenik vizuálisan, és hozzáadódik az elem magasságához és szélességéhez. Ha a keretnek vannak átlátszó részei az elem háttere látszódik ezeken a területeken.

A belső margón kívül helyezkedik el a keret (jelen esetben vörös színnel).

Keret stílus

A border-style (keret stílus) tulajdonsággal határozhatjuk meg a keret vizuális megjelenését (alapértéke a none, vagyis nincs keret).

Lehetséges értékei:

  • none, hidden - nincs keret

  • solid - folytonos vonal

  • dotted - pontozott

  • dashed - szaggatott vonal

  • double - dupla vonal

  • outset - kiemelkedő

  • inset - süllyesztett

  • groove - bemélyített

  • ridge - kidomborodó

A keret stílust is megadhatjuk gyorsírásos formában (fentről kezdve az óra járásával megegyező irányban következnek az oldalak):

Lehetőség van az összes oldal keretének border-style értékét is beállítani egy értékkel, feltételezve, hogy az összes oldal keret stílusa megegyezik:

Keret szélesség

A border-width (keret szélesség) tulajdonságnak az értéke adja a keret vastagságát. Negatív értéket nem vehet fel (alapértéke medium, vagyis közepes).

A keret szélesség megadható gyorsírásos formában, oldalanként eltérő értékkel (fentről kezdve az óra járásával megegyező irányban következnek az oldalak):

Egy értékkel meghatározva is megadhatjuk az összes oldal keret szélességét, feltételezve, hogy minden oldalon megegyezik az értéke:

Keret szín

A border-color a keret színét határozza meg. Értéke lehet bármely CSS színrendszer szerinti szín (alapértéke felveszi a szövegszínt, vagyis a color tulajdonságban meghatározott színt).

Oldalanként eltérő keret szín.

A keret színt is megadhatjuk gyorsírásos formában (fentről kezdve az óra járásával megegyező irányban következnek az oldalak):

Meghatározhatjuk egy érték megadásával az összes oldal border-color értékét is, feltételezve, hogy az összes oldal keretének színe megegyezik:

Gyorsírásos keret

Gyorsírásos módszerrel megadhatjuk oldalanként a kereteket, ehhez meg kell adnunk a keret színét, stílusát és szélességét szóközökkel elválasztva border-top, border-right, border-bottom vagy border-left CSS tulajdonságokban meghatározva:

Egy még kompaktabb megoldás, amikor az összes oldal keretét egy border tulajdonságban írjuk le, feltételezve, hogy a keret minden oldalon egyező stílussal színnel, és vastagsággal rendelkezik:

Külső margó - margin

A margin, vagy külső margó az elemek közötti eltartást határozza meg. Értéke lehet negatív, ebben az esetben egymásra csúsznak az elemek. Alapértéke 0px.

Ebben a példában a gyermek elem margója függőlegesen szétnyomja a szülő elemet.

A margin esetében is van gyorsírásos variáns, oldalanként külön értékkel (fentről kezdve az óra járásával megegyező irányban következnek az oldalak):

Be tudjuk állítani egy érték megadásával az összes oldal margin értékét is, feltételezve, hogy az összes oldal margójának mérete megegyezik:

A margin-nak van egy speciális értéke, ez az auto, vagy automatikus margó, ha ezt vízszintesen, vagyis jobb és, vagy bal oldalt megkapja egy elem, a margója az adott oldalon addig nyúlik, amíg a rendelkezésre álló hely el nem fogy. Ez lehetővé teszi, hogy automatikus margóval balra, középre, vagy jobbra rendezzük a blokkos megjelenítésű elemeket.

Ebben a példában a bal oldali auto margin jobbra tolja az elemet.
A bal és jobb oldali auto margin vízszintesen középre rendezi az elemet.

Az auto margin számos CSS megoldás alapját képezi, lásd:

Középre rendezésKonténer középre rendezése

Alapesetben függőlegesen hatástalan az automatikus margó, ha egy elem margin-top vagy margin-bottom tulajdonságát auto-ra állítjuk, akkor a böngésző azt nullának fogja venni, ez alól kivételt képez a flex (rugalmas) megjelenítési mód, ahol a rugalmas elemekre vertikálisan is alkalmazható az automatikus margó.

Doboz méretezése - box-sizing

A box-sizing tulajdonság alapján számolja a böngésző az elemek méretét.

Két lehetséges értéke lehet, az alapérték a content-box ebben az estben az elem tartalmának szélességéhez, magasságához hozzáadódik a belső margó és a keret szélessége, magassága.

Sötétebb kékkel a padding, és a border, alapestben ezek hozzáadódnak az elem szélességéhez (fehér nyilakkal jelölve).

A box-sizing tulajdonság második lehetséges értéke a border-box, amikor a szélességbe, és magasságba beleszámít a belső margó és a keret szélessége, magassága.

Border-box esetében a padding, és a border nem növeli az elem méretét, befelé képződik (fehér nyilakkal jelölve).

Ábra

Last updated