Autor Zpráva
Yourk
Profil *
Udělal jsem si menu a aby bylo hezčí použil jsem odrážky li. Na tomto menu je nastaven margin tak aby odrážka z textem byla od kraje odsazená. Ve většině prohlížečů je vše v pořádku ale v Mozille firefox ne.
html
  <div id="menus">          
          <br>                
          <li>           
          <a href="../index.html" id="menu">asd</a>                                                                   
          <br>                
          <li>          
          <a href="../clanky/asd.html" id="menu">asd</a>                                                                      
          <br>                
          <li>          
          <a href="../clanky/asd.html" id="menu">asd</a>                                                                        
          <br>                
          <li>          
          <a href="../clanky/asd.html" id="menu">asd</a>          
          <br>            
          <li>          
          <a href="../clanky/asd.html" id="menu">asd</a>          
          </li>         
          </li>          
          </li>          
          </li>            
          </li>
 </div>

css
#menus{
float:left;
width:70px;
padding-left:15px;
}

Id menu má už pouze barvu odkazu.
Výsledek:
Google chrome a IE:

Mozilla Firefox:

Nevíte v čem je problém ?
panther
Profil
Yourk:
některé prohlížeče odsazují defaultně levým marginem, jiné levým paddingem. Obojí odsazení je 40px zleva.

EDIT: teď jsem si všiml, že je máš všechny zanořené do sebe, což je špatně ve tvém případě.

HTML toho kousku, co jsi poslal, je správně takto. ID je identifikátor, který má být jednoznačný a v dokumentu tedy nejvýše jednou. Pro vícenásobný výskyt slouží třída (class).
<menu>
  <li><a href="">asd</a></li>
  <li><a href="">asd</a></li>
  <li><a href="">asd</a></li>
  <li><a href="">asd</a></li>
</menu>
Chamurappi
Profil
Reaguji na Yourka:
Udělal jsem si menu a aby bylo hezčí použil jsem odrážky li.
<li> není odrážka, ale položka seznamu.

Nevíte v čem je problém ?
Nemáš položku seznamu v seznamu.
Jde ji i přesto nastylovat, aby vypadala všude stejně, stačí si pohrát s marginem a paddingem.
Yourk
Profil *
Pomohlo dát položky do seznam... Děkuji :)
Miloš
Profil
panther:
máš všechny zanořené do sebe
Nemá je zanořené, protože pokud po <li> následuje <li>, tak ta druhá tu první automaticky uzavře. Ty uzavírací </li> jsou tam pak naprosto zbytečné.
panther
Profil
Miloš:
Nemá je zanořené, protože pokud po <li> následuje <li>
já vím :-), chtěl jsem tím naznačit, že to není tak, jak Yourk chtěl a předpokládal. Jinými slovy, chce-li Yourk položky ukončovat, tak jinde, než tak činí.
Bubák
Profil
Menu se dělá elementem MENU nebo ho můžeme chápat jako seznam odkazů UL, na položky se používá element LI. Takže jsi to náhodou udělal skoro správně. Aby to bylo hezké, tak se vzhled nejen menu dá upravovat pomocí CSS.
Je nesprávné každému odkazu dávat ID, a zbytečné dávat mu třídu, zaměříš ho kontextem, ve tvém případě takto:
#menus a {color: red;}
#menus a:hover {color: blue;}

Jde jen o příklad, menu doporučuji upravit podle [#2] pantherova návrhu.
lilbrain
Profil
Zdravím, měl bych pár přípomínek k tomuto tématu:


#7 - Neexistuje standardizovaný tag, který definuje menu, tak, jako ho tu zmiňujete. Menu se tedy "nědělá" elementem "MENU", to tu Yourka, který očividně začíná s kodeřinou, akorát uvádíš v omyl. Tag "menu" byl před HTML5 považován za zastaralý a nevalidní.
V definici HTML5 se opět uveden, ale má již diametrálně odlišný účel.

V praxi se jako nepsané pravidlo používá klasický <ul /> pro veškeré navigační prvky na stránce (pokud řazení položek má nějakou logiku, např výpis komentářů, lze vcelku dobře použít i <ol />).

S příchodem HTML5 tu máme nový tag "nav", což je pro účely navigace přestrojené <ul /> na sémantických steroidech:oD

Pro produkční nasazení bych stále doporučoval pro navigaci na stránce používat "staré a dobré" <ul />, pro portfolio či experimentální new school projekty bych se nebál <nav />.

#5 <li /> je párový tag je dobrým zvykem tento tag uzavírat. Navíc neuzavření párových tagů je xhtml, html5 nevalidní.

LB
Miloš
Profil
lilbrain:
Menu se tedy "nědělá" elementem "MENU"
A co <menu>, ten neexistuje? Někdo ho zakázal? Nefunguje?
To, že je něco považováno za zastaralé, není argument. V HTML 4.01 transitional je zcela regulérním tagem.
V HTML se nepoužívá <ul />, nýbrž <ul>.
<li> nemá v HTML povinnou ukončovací značku a je zcela irelevantní, co ty považuješ za dobrý zvyk.
Chamurappi
Profil
Reaguji na lilbraina:
Tag "menu" byl před HTML5 považován za zastaralý a nevalidní.
Nikoliv. Konsorcium ho prohlásilo za zavržený, což mělo znamenat, že teprve možná bude zastaralý a nevalidní v příští verzi HTML. Neodůvodněné kroky W3C jsou zpravidla chyby.
Co podle tebe vyjadřuje element <menu>, když ne menu? Jídelní lístek?

V definici HTML5 se opět uveden, ale má již diametrálně odlišný účel.
Ne, že by na specifikacích záleželo, ale s atributem type="list" (což je ekvivalent vynechaného typu) vyjadřujean unordered list of items (each represented by an li element), each of which represents a command that the user can perform or activate“.

S příchodem HTML5 tu máme nový tag "nav"
Jo, máme tu nové nesmyslné reinvence a novou jásající evangelizační vlnu, která nadšeně nahrazuje selský rozum bezbřehou loajalitou. Element <nav> má slabou podporu, používat ho v tuto dobu není experimentování, ale hloupost.

[#5] <li /> je párový tag je dobrým zvykem tento tag uzavírat
Uzavírání elementů, které už jsou automaticky uzavřené, je zbytečné a nevalidní.
O <head> se také říká, že to je párový element, přesto není povinné ho explicitně zavírat, ani otevírat.

Navíc neuzavření párových tagů je xhtml, html5 nevalidní.
V HTML 5 nemá <li> povinnou ukončovací značku a XHTML vesměs nikdo nepoužívá.
lilbrain
Profil
#10 Dobrá, taky si pohraji s Wysiwygem.

„V HTML 5 nemá <li> povinnou ukončovací značku“
I když HTML5 není dokončené a plánováné dokončení se datuje někdy k 2025, už jsme ho tu načali, takže ho beru jako relevantní téma.
Mně totiž zatím vždy experimentální HTML5 validátor vypisoval na neuzavřené párové tagy (tedy i <li />) errory.

„XHTML nikdo nepoužívá“
Inu zkusme být trochu objektivní, "sympatie" k W3C nechat před dveřmi a sdělit uživateli Yourkovi informace, které se týkají praxe a které se mu budou hodit pro případné komerční projekty, zde totiž panuje názor, že validní web je vše (my víme, že situace je poněkud jiná, ale vysvětlujte to klientům, že ano:oD), inu a jeden z prvních požadavků na analýze je snad vždy "XHTML validní". Toto je fakt.

„Uzavírání elementů, které už jsou automaticky uzavřené, je zbytečné a nevalidní.“
Uzavírání párových tagů je nevalidní?

„O <head> se také říká, že to je párový element, přesto není povinné ho explicitně zavírat, ani otevírat.“
Gmail a Zoznam.sk Vám například HTML email bez <head /> nezobrazí a zobrazí jen prázdný email.

„Element <nav> má slabou podporu“
Všeobecně HTML5 má slabou podporu a na produkčních webech se nepoužívá. Snad výjimkou je Symbio a jejich nedávno spuštěný fenomenální web www.detskavyziva.cz/. Takže ano <nav /> má opravdou slabou podporu, stejně jako celé HTML5:oD

No a jelikož jste tak pěkně odbil celé XHTML: „XHTML vesměs nikdo nepoužívá.“, dovolím si Vás parafrázovat:

<menu /> nikdo nepoužívá.


Pěkný den.

LB
Miloš
Profil
lilbrain:
jeden z prvních požadavků na analýze je snad vždy "XHTML validní". Toto je fakt.
A ty děláš weby pro lidi, nebo pro analýzu? Většina stránek, které jsou nakódované podle pravidel XHTML, dostanou prohlížeče jako text/html a takovou stránku považují za HTML. To měl Chamurappi na mysli větou „XHTML vesměs nikdo nepoužívá“.

A je pravda, že <menu /> nikdo nepoužívá, protože podle pravidel HTML tam to lomítko nemá co dělat.
A že by XHTML Chamurappi odbil? To jako Bim Bam, Bim Bam?

Gmail a Zoznam.sk Vám například HTML email bez <head /> nezobrazí a zobrazí jen prázdný email.
On někdo používá <head />? A proč je tam to lomítko?
lilbrain
Profil
#12 <element /> naznačení párového elementu.

LB
lilbrain
Profil
Ano, web psaný dle DTD XHTML je stejně většinou servírovaný jako text/html, tuším, že snad jen pan Hulán striktně své weby servíruje jako XML.
lilbrain
Profil
#12 Weby se dělají pro lidi, google bota a v neposlední řadě kvůli placení nájmu či hypotéky:oD Právě, že například klientovi je jedno, že se jeho web posílá jako plain text, ale když si projede svůj těžce zaplacený web validátorem, chce prostě výsledky.
Miloš
Profil
A k čemu je validita dobrá?
Chamurappi
Profil
Reaguji na lilbraina:
Mně totiž zatím vždy experimentální HTML5 validátor vypisoval errory
Těžko. (Není to sice přímo ten experimentální validátor, ale vrací totožné výsledky.)

i když tedy HTML5 nesedí na XML, očividně si dobré zvyky z xhtml vzal
Ne, syntaxe HTML 5 vychází z implementace HTML v prohlížečích, která částečně respektuje HTML 4. Není třeba hrát si na to, že existují přísná pravidla.

my víme, že situace je poněkud jiná, ale vysvětlujte to klientům, že ano:oD
Kde se líhnou ty domněnky, že klientům strašně moc záleží na jakýchsi technických detailech? Vymluvit průměrnému manažerovi požadavek na validitu dokáže několika slovy i jiný průměrný manažer, nejsou nutné hlubší znalosti. Stačí se rozhlédnout po okolí, validní není skoro nic, navíc roste počet faktorů, které nutí k nevaliditě — třeba facebooková udělátka.

Uzavírání párových tagů je nevalidní?
V Yourkově kódu ano, viz [#5], na který jsi reagoval. Smazáním uzavíracích </li> by snížil počet chyb.

Všeobecně HTML5 má slabou podporu a na produkčních webech se nepoužívá.
Prakticky nejde ho nepoužívat. Všechno, co je zaslané s typem text/html, spadá do kompetence HTML 5. I když to deklaruje v <!doctype> deklaraci XHTML, prohlížeče se řídí pravidly, která jsou v návrhu HTML 5, mnohem věrněji než jakoukoliv jinou (X)HTML specifikací — proto jsem odbíjel to XHTML. Na produkčních webech se už dávno užívají atributy autocomplete, contenteditable, element <embed>

<menu /> nikdo nepoužívá.
Prohledej si keš svého prohlížeče, s velkou pravděpodobností najdeš mnoho výskytů řetězce „<menu “.
panther
Profil
lilbrain:
No a jelikož jste tak pěkně odbil celé XHTML: ‚XHTML vesměs nikdo nepoužívá.‘, dovolím si Vás parafrázovat: <menu /> nikdo nepoužívá.
Zatímco nepoužívání XHTML má ten prostý důvod, že je málo podporované, <menu> mnoho lidí nepoužívá, protože to je z neznalosti. Každý správný kodér jej zná a může jej tedy používat.

Jsi další z vlny lidí, kteří žijí v omylu ohledně tagu menu, kterému mnoho lidí nevěří, kteří žijí na vlně XHTML (ano, je to HTML), neznáš pořádně pravidla HTML (povinné a nepovinné počáteční a koncové značky) a přesto o nich kážeš.

Než něco začneš psát, nejprve si informace ověř, ať tu nemotáš hlavu začínajícímu Yourkovi.
Bubák
Profil
lilbrain:
#12 <element /> naznačení párového elementu.
Trocha hnidopišství, neznám žádný párový element, ale znám párové tagy.
http://zdrojak.root.cz/zpravicky/tag-neni-element-nebo-ano/
lilbrain
Profil
Pěkný večer,

zatímco Chamurappi byl taktní a jeho příspěvky jsou jistě k věci, teď již tato diskuse začíná být na můj vkus zbytečně moc osobní, rád bych však na pár věcí reagoval a některé uvedl na pravou míru...

#18
Jsi další z vlny lidí, kteří žijí v omylu ohledně tagu menu, kterému mnoho lidí nevěří, kteří žijí na vlně XHTML (ano, je to HTML)
To jste usoudil dle toho, že tu celou dobu záměrně píšu o markupu v komerčních či snad dokonce státních zakázkách? Nikde jsem tu nepsal, že bych pro soukromé projekty nepoužíval geolocation, API pro native drag & drop, video, audio, canvas, tedy HTML5.

Jsi další z vlny lidí..., neznáš pořádně pravidla HTML
Absolutně nemám potřebu, aby mě tu někdo soudil, děkuji, nechci:oD

ať tu nemotáš hlavu začínajícímu Yourkovi
Jako více matoucí mi přijde tvrzení (leč tedy naprosto správné, to musím uznat), že uzavírání párových tagů je nevalidní, chybné a spoustu věcí, co tu zaznělo. Pokud je Yourek pravidelným návštěvníkem Webylonu, asi se nad touto diskuzí směje, pokud ne, a čerpá například
ze školních materiálů, tam je situace zcela jiná a odporuje tomu, co tu zaznělo.

#17
Není to sice přímo ten experimentální validátor, ale vrací totožné výsledky
Ano, máte pravdu, chyba byla na mé straně.

Vymluvit průměrnému manažerovi požadavek na validitu dokáže několika slovy i jiný průměrný manažer, nejsou nutné hlubší znalosti.
Při státních zakázkách a při auditech na celkovou přístupnost webu toto bohužel není pravda, respektive aspoň v těch dnech, kdy probíhá audit, musí být vše dle norem a zákonů:oD (pochopíte konečně, že mě tento stav také děsí a štve?)

V Yourkově kódu ano, viz [#5], na který jsi reagoval. Smazáním uzavíracích </li> by snížil počet chyb.
To je nepochybně pravda, ale nebavili jsme se do teď tak nějak v globálním měřítku?

Na produkčních webech se už dávno užívají atributy autocomplete, contenteditable, element <embed>…
Souhlasím, dokonce bych v intranet apps, cms viděl jako jeden z nejužitečnějších atributů "data-*".
Přesto viděl jste komeční weby, státní weby, kde by se používalo video, audio, drag & drop API (teď nemám na mysli youtube, vimeo atd...)? Protože pokud se bavíme o HTML5, jistě nemáme na mysli jen "pár tagů a attributů". Má vůbec kromě Safari a Nightly webkitu nějaký aktuální browser nativní podporu header, nav, aside, figure... ? Předevčírem jsem si stáhl betu FF 4, jak je na tom s podporou html5 tagů, attributů a APIs?

Prohledej si keš svého prohlížeče, s velkou pravděpodobností najdeš mnoho výskytů řetězce „<menu “.
Ano, našel jsem. Stejně tak jsem našel duplicitní IDs, přeházené pořadí tagů... vypovídá to o něčem?
Vlastně ano, že v html se tento tag používá.

Z téhle diskuse jsem si odnesl jednu důležitou věc a to RSS feed Webylonu, jsem za to vděčný.

Nejspíš přijdou nějaké odpovědi na moji osobu, až se tak stane, bylo by dobré toto vlákno uzavřít, jelikož je již opravdu offtopic.

LB
Miloš
Profil
lilbrain:
Jsi další z vlny lidí..., neznáš pořádně pravidla HTML
Absolutně nemám potřebu, aby mě tu někdo soudil, děkuji, nechci:oD
A to je nějaké souzení?

Prohledej si keš svého prohlížeče, s velkou pravděpodobností najdeš mnoho výskytů řetězce „<menu “.
Ano, našel jsem. Stejně tak jsem našel duplicitní IDs, přeházené pořadí tagů... vypovídá to o něčem?
Ano, vypovídá – o „pravdivosti“ tvrzení, že „<menu /> nikdo nepoužívá.
Chamurappi
Profil
Reaguji na lilbraina:
Jako více matoucí mi přijde […] a spoustu věcí, co tu zaznělo.
Ty zazněly většinou až v reakci na tebe. Raději budu matoucí, než abych nechal bez povšimnutí vratkou oponenturu.

Při státních zakázkách a při auditech na celkovou přístupnost webu toto bohužel není pravda
Zákon o informačních systémech veřejné správy nevyžaduje ani XHTML, ani validitu. Pokud nějaký hloupý audit požaduje průchod hloupým testem, stačí zneužít té hlouposti — pak si může Yourk vynechávat </li>, jak se mu zlíbí, a stále bude mít XHTML stejně validní, jako ho má www.w3.org.
Jinak samozřejmě to, že existují tvrdohlaví zadavatelé, se kterými žádný argument nehne, je možné, ale pochybuji, že jich je většina.

Přesto viděl jste komeční weby, státní weby, kde by se používalo video, audio, drag & drop API (teď nemám na mysli youtube, vimeo atd...)?
Používá se maximum toho, co spolehlivě funguje v rozšířených prohlížečích a co je pro uživatele zajímavé. Nehledě na verze. Chce-li mít kodér oporu ve specifikacích, musí se obrátit na nedokončené HTML 5 a na nedokončené CSS 2.1 či 3, protože nic jiného tvůrci prohlížečů neuznávají.

Má vůbec kromě Safari a Nightly webkitu nějaký aktuální browser nativní podporu header, nav, aside, figure... ?
Ne. Ona totiž po těch elementech není vůbec žádná poptávka, je to jen žrádlo pro evangelizátory. Neexistuje praktické využití.

Z téhle diskuse jsem si odnesl jednu důležitou věc a to RSS feed Webylonu
Děkuji. O důvod víc, abych zase někdy něco napsal.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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