Ez a bejegyzés koreai nyelven is elérhető .
A lábléc az utolsó elem az oldalon. Legalább a nézetablak alján található, vagy alacsonyabb, ha az oldal tartalma magasabb, mint a nézetablak. Egyszerű, igaz? ?
Ha láblécet tartalmazó dinamikus tartalommal dolgozik, néha olyan probléma lép fel, amikor az oldal tartalma nem elegendő annak kitöltéséhez. A lábléc ahelyett, hogy az oldal alján maradna, ahol szeretnénk, hogy maradjon, felemelkedik, és üres helyet hagy maga alatt.
A gyors javítás érdekében a láblécet abszolút az oldal aljára helyezheti. De ennek megvan a maga hátránya. Ha a tartalom nagyobb lesz, mint a nézetablak, akkor a lábléc továbbra is „ragaszkodik” a nézetablak aljához, akár akarjuk, akár nem.
Ez azt a viselkedést mutatja, amelyet nem és nem akarunk:

Nézzünk meg egy megközelítést ennek elérésére.
A lábléc ellenőrzése
index.html
:
main.css
:
#page-container { position: relative; min-height: 100vh; } #content-wrap { padding-bottom: 2.5rem; /* Footer height */ } #footer { position: absolute; bottom: 0; width: 100%; height: 2.5rem; /* Footer height */ }
Szóval mit csinál ez?
- Az
page-container
oldal mindent megkerül az oldalon, és minimális magasságát a nézetablak magasságának (vh
) 100% -ára állítja . Jelenlegi helyzetébenrelative
gyermekelemeiabsolute
későbbi helyzet alapján beállíthatók . - Ennek
content-wrap
alsó alátétje van, amely a lábléc magassága, biztosítva, hogy pontosan elegendő hely maradjon a lábléc számára abban a tartályban, amelyben mindketten vannak. Itt olyan csomagolástdiv
használnak, amely az összes többi oldal tartalmát tartalmazná. - A értékre
footer
van állítvaabsolute
, ragaszkodva ahhozbottom: 0
, hogypage-container
benne legyen. Ez fontos, mivel nemabsolute
a nézetablak felé vezet, hanem lefelé mozog, hapage-container
a nézetablaknál magasabb. Mint említettük, az önkényesen2.5rem
ide beállított magasságát acontent-wrap
fentiekben használjuk .
És itt van. A lábléc most ott marad, ahol elvárhatja!
Utolsó simítások
Természetesen ez CSS, tehát nem lenne teljes néhány mobil-specifikus UX megfontolás és alternatív megközelítés min-height: 100%
helyett 100vh
. De ennek megvannak a maga hátrányai.
A Flexbox (flex-grow) vagy a Grid szintén használható, és mindkettő nagyon erős.
Hogy melyik módszert választja, az teljesen Önön és a tervezés sajátosságain múlik. Remélhetőleg a fenti példa és linkek segítenek időt spórolni a döntés meghozatalában és végrehajtásában.
Köszönöm, hogy elolvasta. Íme néhány más dolog, amit a közelmúltban írtam:
- Kezdő útmutató az Amazon Elastic Container Service szolgáltatásához
- React tesztelése Jest és Enzyme segítségével