Autor Zpráva
Darkry
Profil
Zdravím,

mám takový komplexnější problém :-).

Odkaz na živou ukázku
(hlavní css style je style.css, reset.css je css reset a styl přímo v hlavičce je prozatimní styl pro tu jednu konkrétní stránku)

Problémy jsou konkrétně 2. Oba jsou na stránce velmi dobře vidět
1) Jak asi vidíte potřebuji aby se levý pruh (menu) protáhl až dolu, ať tam kam bude sahat obsah napravo od menu. Podle všech nalezených řešení tohohle problému stačí nastavit všem nadřazeným elementům až do body, html height:100% což bohužel u mne protáhne jen do konce obrazovky. Zkoušel jsem i menu dát např. přímo do divu #obsah, ale nic nepomohlo

2) Druhý problém je vidět na tom seznamu rolí a jejich práv a to konkrétně do chvíle než seznam skočí doleva pod končícím levým sloupcem (tam už je to pak v pořádku). Jde o to, že předtím nefunguje vlastnost:
ul.roles ul {
        margin-left: 20px;
}
Myslím si, že to bude tím, že celý div #all má nastaveno width: 100%, což ale musí být aby jméno uživatele v liště opravdu plavalo vpravo. Navíc nevím jestli je opravdu problém v té 100% šířce.

Díky moc za jakékoli návrhy řešení
Camo
Profil
S tou 100% šírkou a tým podsunutím obsahu pod sidebar, máš pravdu. Pre teba(ak to chceš 100% šírky), by bolo najlepšie dať tomu witdth:80% a padding-left:20%(Alebo margin, podľa toho čo potrebuješ...)

Ten ľavý pruh potiahneš dole tak, že ho urobíš ako background tomu obalovaciemu elementu, miesto toho ľavého menu.

Toto by si si mal prečítať: http://weblog.plavacek.net/2005-02.html

PS:Naozaj musí mať div all position:absolute?
A tá zátvorka v tom tagu tam asi nemá byť.
Darkry
Profil
Camo:
Díky za odpověď. Situace s pozadím se už sice zlepšila, ale ten obsah pořád po skončení menu jako takového (pozadí pokračuje) skočí vlevo, ale já potřebuju aby zůstával v tom pravém sloupci.
Asi by to šlo udělat, že bych to menu vyjmul z toku dokumentu (position: absolute;) a tomu pravém sloupci dal margin-left: sirkaMenu px; ale to mi přijde jako spíš takové nouzové a rozhodně ne elegantní řešení.
Ještě doplním, že jsem musel u obsahu upravit height: 100%; na min-height: 100%; jinak se totiž bral zbylý obsah jako overflow.

Co si týká toho position:absolute; u #all tak tam asi být musí, protože jinak se to logo a jméno přihlášeného uživatele překryje tím pozadím (které má také position: absolute;).

Díky moc!
Camo
Profil
No tak na prekrývanie používame vlastnosť z-index...
To menu má mať float left. Inak nebude pri väčšej výške menu a kratkom obsahu fungovať clearovanie a pata vyletí nad to menu...
A to stým marginom a podsúvaním toho obsahu som už písal...
.
Darkry
Profil
Camo:
s marginem to už pokládám za vyřešený v tom problém není
Z-index bylo samozřejmě první co jsem zkoušel, ale bohužel nefunguje.

S tim menu teď nějak nechápu jak to myslíš, samozřejmě že menu má float: left já se teď snažim vyřešit aby ten text po skončení menu (jeho obsahu) neskočil vlevo, ale zůstal jakoby v pravém sloupci.
Camo
Profil
s marginem to už pokládám za vyřešený v tom problém není
Ja píšem o tom margine v súvislosti s tým menu. Ten obsah, musí mať taký margin/padding-left ako je široké to menu. A podľa toho upraviť aj šírku, keďže sa šírka s paddingom/marginom sčítava.

Z-index je trochu záludný:
toto sú dve zásadné vety z JPW:
Velmi častá chyba v uvažování: vezmu jeden prvek, nastavím mu nízký z-index, aby byl vespod. Potom uvnitř toho prvku budu mít jiný prvek, kterému nastavím vysoký z-index, aby překryl ostatní prvky stránky. Jenomže nepřekryje! Dědí totiž částečně vlastnost toho vyššího prvku a už se nikdy nedostane "výš", i kdyby měl z-index milión.
a
Z-index funguje pouze u pozicovaných prvků, to jest u těch, které maji vlastnost position nastavenu na absolute, relative nebo fixed. 
Darkry
Profil
Tak jsem tomu dal ten margin-left a šířku nakonec asi 60% aby byla rezerva na menší monitory. A už to funguje jak má.

K tomu z-indexu: dal jsem tam tedy position: relative; a z-index: 100; a funguje to také.

Díky moc za pomoc!

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0