M-a intrebat Andrei de ce lumea prefera sa foloseasca < li > – uri in loc de < a > – uri cand are de construit cate-un meniu CSS.
La intrebarea lui Andrei raspunsurile mele ar fi cam doua:
1. Pentru Google. LI = list item… adica niste A-uri in LI-uri intr-un UL il “fac” pe Google sa priceapa ca exista anumite relatii intre A-urile alea – lucru bun pentru relevantza.
2. Pentru ca deobicei pentru a defini un buton mai bogat grafic dar editabil ca text ai nevoie de cel putin 2 tag-uri unul in altul… or, cand folosesti un < A > intr-un < LI >, obtii exact asta, fara sa mai scrii
< div class= “menu” > < div class = “item” > < a href=”#” > menuitem < /a > < / div > < / div>
Impusti asa doi iepuri dintr-un foc: obtii cod mai STRUCTURAT si mai CURAT.
Iar pentru puristii care sunt atenti la orice bit optimizabil, LI e un cuvant mai scurt decat DIV, iar definirea clasei unui UL face ca definirea stilurilor elementelor din el sa devina redundanta in cod – deci o noua economie.
Exemplificare:
< div class = "menu" > < div class = "item" > < a href="#" >menu item 1< / a > < / div > < div class = "item" > < a href="#" >menu item 2< / a > < / div > < div class = "item" > < a href="#" >menu item 3< / a > < / div > < / div>
vs
< ul class = "menu" > < li >< a href="#" >menu item 1< / a >< / li > < li >< a href="#" >menu item 2< / a >< / li > < li >< a href="#" >menu item 3< / a >< / li > < / ul>