Kezdőoldal » Számítástechnika » Weblapkészítés » Ebben az esetben a <center>-ne...

Ebben az esetben a <center>-nek miért nem tudok margin-bottom értéket adni?

Figyelt kérdés

Adott a következő felosztás: van egy <center> elem majd alatta a <footer>. Mindegyik szélessége 100% és egymás felett-alatt helyezkednek el. A <footer> position:fixed;bottom:0 értékkel a lap legaljára van fixálva. Mind a kettő közvetlen a <body> tagben van elhelyezve.

A <center> a következő tulajdonságokkal rendelkezik:

-width:00%;

-height:auto;

-box-sizing:border-box;

-z-index:0;

A <footer> pedig:

width:100%;

-height:auto;

-position:fixed;

-bottom:0;

-z-index:-1;

A <html> illetbe <body>:

width:100%;

-height:100%;

-border:none;

-margin:0px;

padding:0px;

Szóval, a dolog mindaddig működik amíg a <center> nincs akkora mint a teljes képernyő, ha viszont annál nagyobb (ergo görgetni kell) akkor alatta a <footer> egyszerűen eltűnik. A <center> nagyon ragaszkodik ahhoz hogy a képernyő legaljáig érjen akkor ha a tartalma azt kívánja hogy nagyobb legyen mint a képernyő magassága. A margin-bottom-ra egyszerűen nem reagál, akkor is a képernyő legaljáig akar érni. Próbáltam neki különböző display értékeket adni az sem változtatott. Tudom hogy a z-index kicsit belerondít a képbe de máshogyan a <footer> fixen a képernyő alján van akkor is ha görgethető az oldal.


Valakinek esetleg ötlete?



ápr. 29. 13:55
 1/9 A kérdező kommentje:
Amit kifelejtettem: és így kitakarja a <footer>-t a <center> mivel mindenképp a képernyő aljáig akar érni.
ápr. 29. 13:55
 2/9 A kérdező kommentje:
Ha a z-indexeket egy szintre hozom szintén nem jó.
ápr. 29. 14:00
 3/9 anonim ***** válasza:
100%
Szedd ki a z-indexeket és a tartalmi blokknak (a <center> taget felejtsd el, nem szemantikus, helyette használd például a <main> elemet ( [link] )) adj némi alsó kitöltést (padding bottom), így a lábléc nem fog rálógni a tartalomra.
ápr. 29. 15:26
Hasznos számodra ez a válasz?
 4/9 Szikszai.B ***** válasza:
100%

Egyrészt, ne kisregényt írj, hanem csatolj kódot, abbol látszik is, hogy mi a probléma.

Másrészt a <center> tag elavult, ne használd.

Harmadrészt, ismerkedj meg a flexbox-szal és a griddel, illetve az olyan mértékegységekkel, mint a vh, mert szerintem te valami ilyesmit szeretnél csinálni, csak nem tudod, hogyan kell.

ápr. 29. 15:52
Hasznos számodra ez a válasz?
 5/9 A kérdező kommentje:
#4 Direkt nem vh-t használtam, például a betűméretek és a cellaméretek fix méretűek legyenek.
ápr. 29. 16:06
 6/9 Szikszai.B ***** válasza:

Nem úgy értem.

Azzal, hogy a footer-nek position: fixed-et adtál, kiemelted a document flow-ból, innentől fogva a centernek és a footernek semmi közük egymáshoz, nincsenek layoutbeli kapcsolatban egymással. Gyakorlatilag tök függetlenek egymástól.


Több jó megoldás is van, de az sehogy se lesz jó, ha valamelyiket kiemeled a document flow-ból.

Adj a body-nak 100vh-t, így akkora lesz, mint a megjelenítő mérete. Ugyanakkor legyen flex, és flex-column, hogy a layout függőlegesen (oszlopszerűen) legyen. Már ennyi elég ahhoz, hogy a main és a footer egymás alatt legyenek.

Aztán adj egy flex-grow: 1-et a main-nek, hogy felhasználja a rendelkezésre álló területet.

Itt egy példa: [link]

Ez akkor is jól működik, ha a main-ben nincs semmi, mert a flexbox akkor is "lenyúlik" az oldal aljáig,

ápr. 30. 08:08
Hasznos számodra ez a válasz?
 7/9 Szikszai.B ***** válasza:

Itt egy grides megoldás, ez talán még egyszerűbb is: [link]

A body magassága 100vh, egyben grid is, a grid-template-rows pedig "1fr auto;", ami azt jelenti, hogy az első sor kitölti a rendelkezésre álló helyet (egy frakció), a második sor magassága pedig automatikus.

Egyszerű, mint az egyszer egy.

ápr. 30. 08:14
Hasznos számodra ez a válasz?
 8/9 anonim válasza:
hú, a <center> már nagyon elavultnak számít. Nézz utána.
máj. 2. 16:38
Hasznos számodra ez a válasz?
 9/9 anonim ***** válasza:
bazzeg én backendes vagyok, de még én is tudom, hogy a <center> totál elavult :D :D :D
máj. 3. 08:39
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!