Autor Zpráva
smiesek
Profil
Snažím se vytvořit sitemapu pro uživatele, kterou styluju za pomocí css a nemohu přijít na následující.

Mapa bude v některých případech tvořena se 3. úrovněmi, kdy ke každé <li> vede horizontální zakončení.
Nemohu však přijít, jak zapsat, aby se mi dále nevytvářelo vertikální stylování, pokud je poslední položkou v seznamu.
Pro názornou ukázku vkládám IMG soubor, podotýkám, že pro tu 3. úroveň mám definováno, aby nedocházelo k žádnému stylování, tedy none
Keeehi
Profil
CSS má selektror :last-child možná pomůže ten. Když dodáš kód (nejlépe v podobě živé ukázky) tak možná poradíme víc.
smiesek
Profil
Keeehi: super, pomocí last-child se mi to podařilo vyřešit, ani jsem netušila v takovou banalitu, já jsem to samozřejmě tvořila za pomocí class="last", ale to dítě mě nenapadlo :-)
Chamurappi
Profil
Reaguji na smieska:
Keeehi zapomněl dodat, že tento selektor nezná starší Explorer.
Keeehi
Profil
Chamurappi:
Stejně jako jiné strarší verze ostatních prohlížečů. Ty jsou samozřejmě méně rozšířené ale teoreticky taky existují. Já nemohu vědět jakou množinu prohlížečů se kdo rozhodne podporovat. Mám tedy vždy a každému připomínat aby si nezapomněl zkontrolovat kompatibilitu se svou množinou prohlížečů?
Je mi jasné, že dost začínajících lidí vůbec nenapadne, že to co funguje v jejich prohlížeči nemusí fungovat jinde. Teď jde o to, jak k nim tu informaci dostat. Jedno řešení je, že upozornění na kompatibilitu budu cpát do každého příspěvku který se týká čehokoli v prohlížeči (css, js). Což teda zaprvé nebude bavit mě a zadruhé to bude stále otravovat ty, kteří už takovou znalost mají. Nebo můžu si tu projít historii toho daného uživatele a z toho si tipnout, jak je zkušený a zda by to mohl a nebo nemusel vědět a podle toho na to upozornit. Ovšem v konečném důsledku každé vlákno má sloužit i pro budoucí návštěvníky a o nich nemohu předpokládat nic, takže by to vlastně mělo být všude. Jak tedy zaručit, aby se ta informace dostala ke všem potřebným a zároveň neotravovala všechny okolo?
pcmanik
Profil
Keeehi:
Ja do príspevkov dopisujem od ktorej verzie IE to funguje, už je potom na zvážení tazateľa či oželie staršie prehliadače.
A konkrétne :last-child funguje od IE 9.
Tomáš123
Profil
Keeehi, smiesek:
Ono to ide dosiahnuť aj použitím tried. Výhoda: Nebudú problémy s kompatibilitou, nevýhoda: bude to náročnejšie na údržbu (čo ale ľahko zvládne JavaScript, potom ale treba upozorniť na tú kompatibilitu :-))
Chamurappi
Profil
Reaguji na Keeehiho:
a zadruhé to bude stále otravovat ty, kteří už takovou znalost mají
Mě to neotravuje. Otravnější mi připadá, když to v odpovědi chybí a já to musím doplnit.

v konečném důsledku každé vlákno má sloužit i pro budoucí návštěvníky a o nich nemohu předpokládat nic
Lze předpokládat, že nikdy v budoucnu nebude v Exploreru 8 fungovat :last-child. To, jak moc bude v jakém budoucnu osmička důležitá, je problém, který si čtenář vyhodnotí sám.

Já nemohu vědět jakou množinu prohlížečů se kdo rozhodne podporovat.
Bylo by tedy v pořádku poradit řešení založené na expression? Třeba cílí jen na Explorery 5 až 7, to nemůžeme vědět :-)
Keeehi
Profil
Chamurappi:
To jsme se špatně pochopili.

Možnost jedna je to psát všude. Bude mě to lehce otravovat, ale ok. V tom případě proč ale upozorňovat jen na IE, čím je tak vyjímečný. Třeba chrome podle w3schools umí last-child až od verze 4. Takže abych byl důsledný, měl bych vždy a u každé css vlastnosti zmínit všchny prohlížeče, které je nepodporují od verze 1. Je to samozřejmě dovedené do extrému, ale neměl by tu pak existovat nějaký "oficiální" list prohlížečů a jejich verzí u kterého budeme předpokládat, že pokud tazatel bude vyžadovat podporu i v nižších vezích než jsou určené tímto listem tak ví otom, že je různá podpora mezi prohlížeči a tedy je schopen si to dohledat. Nekompatibilita by se zmiňovala jen s verzemi prohlížečů nad touto linií.

Druhá možnost by byla dostat k uživatelům informaci že zde posytovené kódy nejsou a ni nemohou být kompatibilní se všemi verzemi prohlížečů a aby buď (lepší varianta) napsali své požadavky dopředu nebo (hoší varianta) si ověřili kompatibilitu dodaného řešení a případně se tedy zeptali znovu, pokud by jim to nevyhovovalo.

Osobně se mi líbí druhá možnost více, protože na rozdíl od první tazateli dodá novou informaci kterou stejně bude muset někdy objevit pokud to myslí s prohlížeči alespoň trochu vážně. Problém je, že vůbec netuším, jakým způsobem to k nim dostat.

A ještě nápad k první možnosti s určenou nějakou hranicí. V tomto případěje vše danné - nešlo by to tedy zautomatizovat. Dal by se lehce sestavit list prvků na které by mělo být vždy upozorněno, že mohou mít problémy s kompatibilitou. Pak by přece nemělo být extrémně složité doplnit taovou funkčnost aby na to tyto stánky upozoňovali nějakým vhodným způsobem. Nebo mi něco uniká.
Tomáš123
Profil
Keeehi:
Keď už si to zahnal do takýchto extrémov, môžeš rovno na koniec každého svojho príspevku pripojiť odkaz na celkom prehľadný zoznam informácií o kompatibilite prehliadačov.

měl bych vždy a u každé css vlastnosti zmínit všchny prohlížeče
Myslím, že nie je veľa prehliadačov, ktorých staršie verzie by sa stále používali v tak vysokej miere ako IE. Takže by som upozorňoval iba na (možno) neočakávané problémy. Môj nepodložený názor
Chamurappi
Profil
Reaguji na Keeehiho:
V tom případě proč ale upozorňovat jen na IE, čím je tak vyjímečný.
Rozpětím hojně používaných verzí.

neměl by tu pak existovat nějaký "oficiální" list prohlížečů
Statisticky významné verze pro české prostředí lze najít třeba na rankings.cz.

Druhá možnost by byla dostat k uživatelům informaci že zde posytovené kódy nejsou a ni nemohou být kompatibilní se všemi verzemi prohlížečů
Na jeho místě bych se šel zeptat raději tam, kde dostanu úplné informace (nebo kde mi neříkají, že jsou dodané informace neúplné). Naprosto každá rada je násobená velikostí cílové skupiny, na kterou zabírá, takže s vynecháním půlky výpočtu není možné dobrat se optimálního výsledku. Názor, že elegance kódu je nejdůležitější a že všechny ostatní faktory jsou vedlejší, protože elegantně navržený kód prostě má fungovat, považuji za chorobný.

na rozdíl od první tazateli dodá novou informaci kterou stejně bude muset někdy objevit pokud to myslí s prohlížeči alespoň trochu vážně
Takže každý kolemjdoucí pozorovatel si má všechno sám zkoušet, aby se dozvěděl tak základní věc? To je poněkud dystopická vize fungování diskuse. Časem by ani odpovídající netušili, kde co nefunguje. Což by jim dávalo na jednu stranu volnost, že můžou odpovídat jakkoliv (protože si můžou myslet, že jejich kód v jejich prohlížeči funguje a zbytek vem čert), a na druhou stranu zbytečný strach, že můžou poradit něco podivného a nebezpečného (třeba by se mohli bát alfakanálu v PNG, kdyby nevěděli, že od Exploreru 7 s ním není problém). Řada současných kodérů kombinuje neúmyslnou odvahu s nepodloženým strachem, jejich kódy se hemží nepodloženými předpoklady i zastaralými zbytečnostmi — obojímu můžeme předcházet … a není s tím zase tak moc práce.
Keeehi
Profil
Chamurappi:
Statisticky významné verze pro české prostředí lze najít třeba na rankings.cz.
Super, a teď ještě kde je ta hranice. 5%, 1%, 0.1%? Každý projekt to má jinak. Jaké číslo můžeme předpokládát u většiny dotazů se zde objevujících?

Takže každý kolemjdoucí pozorovatel si má všechno sám zkoušet, aby se dozvěděl tak základní věc?
Neříkám zkoušet ale zjistit. Tyto informace jsou lehce dohledatelné. Kdyby tazatel i kolemjdoucí věděli, že si to můžou vyhledat bylo by to imho úžasné. Je to však nemožná idea.
Chamurappi
Profil
Reaguji na Keeehiho:
Super, a teď ještě kde je ta hranice.
Ideálně nejnižší možná.

Každý projekt to má jinak.
O tom pochybuji. Lze předpokládat, že každý normální tvůrce stránky se snaží zasáhnout maximum možných návštěvníků. Proměnlivé je, jak je to pracné a zda to vůbec jde. Což opět vždy úzce souvisí s konkrétním zadáním a navrženým řešením.

Neříkám zkoušet ale zjistit. Tyto informace jsou lehce dohledatelné.
Vážně? Na prvních místech ve vyhledávačích bývá tebou zmíněný W3Schools, kde jsou mraky očividných chyb. Jak třeba najdeš, od které verze podporuje Explorer barvu rebeccapurple? :-)

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: