Autor Zpráva
Tomáš123
Profil
Zdravím,
Mám takúto skúšobnú stránku, ktorú som zavesil na na web, aby ste mi mohli pomôcť s mojimi problémami a ak sa niekomu bude chcieť, tak aj zhodnotiť zdrojový kód.

Moje problémy spočívajú v:
1.) tom, že ak je v submenu použitý element a, tak zväčšuje padding; ja viem, že mu hore nastavujem ul li a {padding: 1em;} a ten tam musí aj zostať, teda potrebujem aby malo menu padding: 1em; a submenu iba .3em.

2.) tom, že by som potreboval, aby keď chodím po položkách submenu, príslušná položka hore žiarila :hoverom.

3.) tom, že ak má nadradený element opacity napr. 0.8, tak u podradeného táto hodnota znamená 1 a vyššia už nebude. Viem, že takéto správanie opacity je normálne, no pýtam sa či existuje trik, ktorým to obídem.

4.) tom, že by som potreboval, aby neusporiadaný zoznam, ktorý slúži ako submenu bol vždy v strede vzhľadom na položku nad ním, z ktorej sa vysunul. Skúšal som napríklad ľavý vonkajší okraj so zápornou hodnotou polovice šírky submenu, ale nepomohlo to.

5.) tom, že neviem, či je môj zdrojový kód dosť dobrý, ak máte chuť trochu času zabiť, prosím pozrite sa ni naňho.

Vopred ĎAKUJEM všetkým, ktorí mi odpovedia na tieto otázky.
juriad
Profil
1) Pro podmenu použij silnější selektor, například: ul li ul li a {padding: 0.3em;}
2) Změň hover na li: #nav ul li:hover a
3) Jakmile něčemu nastavíš opacity, tak v potomcích to již nelze zrušit

Na víc teď nemám čas.
Bubák
Profil
juriad:
První rada je v principu správná, ale stávající selektor je #nav ul li a, je v nem tedy idéčko, takže bez idéčka, nebo !important, ale to je fuj, se to neřešitelné.

Tomáš123:
Je nutné přebít stávající selektor a zaměřit odkaz v uanořeném seznamu, třebas takto:
#nav ul li ul li a {padding: 0.3em;} /* další možnosti by byly na delší debatu o kaskádování */

Třetí problém je probírán třebas na stránce http://jecas.cz/opacity
Pokud to chceš jako pozadí menu, tak můžeš použít třebas http://jecas.cz/opacity#posicovani, má podporu i v IE7.
Dobrou podporu má i řešení s průhledným obrázkem, ale pokud obrázky budou vypnuté, nebo se nenačtou, tak čitelnost menu bude ohrožena.
Tomáš123
Profil
juriad, Bubák:
1.)
Ďakujem vám za rady, ale aj keď v kóde mám display: block;,:
#nav ul li ul li a{
    display: block;
    padding: .4em .2em;
}
element <li> v submenu sa chová ako riadkový t.j. vykresľujú sa vedľa seba. Neviete ako tomu zbrániť?

EDIT: Vyriešené takto:
#nav ul li ul li{
    display: block;
}
#nav ul li ul li a{
    display: block;
    padding: .4em .2em;
}
Šlo by to aj jednoduchšie, alebo menej "na dvakrát"? Ak áno prosím napíšte mi to tu. Ďakujem.


juriad:
2.)
Změň hover na li: #nav ul li:hover a
Toto riešenie mi akurát po nájdení myši na položku spôsobilo, že sú v :hoveri všetky položky v submenu.

3.) Toto už nie je potrebné riešiť. Bubák, ďakujem za zdroje.

Ešte vás prosím o pomoc s 2.) a 4.)
juriad
Profil
OK.
Řešení 2. spočívá ve změně selektoru na (tentokrát již fakt funguje):
#nav ul li:hover>a
To > znamená přímý potomek (syn), častěji používaná mezera znamená libovolný potomek (klidně pravnuk).

Řešení 4. mě nenapadá, když máš velikosti jednotlivých položek na hlavní úrovni různé.
Tomáš123
Profil
juriad:
Ďakujem juriad, 4.) urobím tak, že nastavím šírku a potom mínusové marginy. Vážim si tvojej odpovede, ak chceš, môžeš si pozrieť výsledok.
Tori
Profil
Ke 4) - když jsem zkusila napevno posunout submenu doleva, tak při rozbalení to vypadá dost divně - černá linka pod aktivní položkou hlavního menu je kratší než sumbenu pod ní, není zarovnaná ani k levému ani pravému okraji. Když navíc posunu podmenu o kousek výš, aby překrylo ten bílý proužek, tak je zas strašně nalepené. ... v původním pozicování mi to nevadí.
Tomáš123
Profil
Tori:
Ďakujem za snahu Tori, takže myslíš že 4.)?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0