Autor Zpráva
Ondřej Mareš
Profil
Zdravím,
Jsem 15-ti letý začátečník, který se učí stránky dělat doma. Zrovna dělám stránky pro tátovu firmu a narazil jsem na jednu chybu, která by se dala přehlédnout. ale já chci vědět proč. Jde o to, že se body a div obal1 na výšku nerozšiřuje podle obsahu. Zas tolik by to nevadilo, ale tenhle problém mám pokaždé.
Děkuju za rady. Tady je odkaz na stránky, kde mám ten problém.
exoslav
Profil
Zkus tohle:
#obal1 {
overflow: hidden
}

Sice nevím proč, ale asi to vyřeší tvůj problém (teda pokud jsem ho dobře pochopil, máš za to, že u body a div#obal1 se ti nezobrazuje výška). Možná by mně mohl někdo vysvětlit, proč, když nastavím overflow na hidden, se ta výška ukáže...
Trejpa
Profil
Ondřej Mareš:
Nastuduj si, jak funguje float. Aby se okolní blok natáhl, musíš v něm ukončit plavání pomocí objektu s clear nebo vnějšímu bloku nastavit vhodné overflow. Když se použije samotné plavání, tak jsou plovoucí prvky vytrženy z obsahu nadřazeného bloku a pokud ten nemá jiný obsah, je jeho výška pochopitelně nulová.

Zbytečně (a špatně) nastavuješ výšky a rozplaváváš elementy, vedle kterých nic nemáš.
margin
Profil *
Nemáš ukončené obtékání (float), klasické řešení je ukončit obtékání patičkou (a vyhodit zbytečný float):
#copyright {
 top: 10px;
 width: 900px;
 height: 50px;
 position: relative;
 clear: both;
 background-image: url(../obrazky/zaklad/copyright.png);
 background-repeat: no-repeat;
}
Jak funguje "float" a "clear"
Zatím jsem v CSS specifikaci ani jinde nenašel, proč lze použít i overflow: hidden; vím jen, že v současných prohlížečích funguje.

Mimo téma:
Místo šachů s pozicováním je vhodnější používat margin a padding.
Ondřej Mareš
Profil
Diky všem :D. Už jsem na to přišel diky marginovi. Teď to snad už začnu chápat líp.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0