dokladnie tak, za wizualna czesc powinien odpowiadac css i jest wtedy czysto i schludnie

Co do list to powinny byc uzyte ul li, bo menu to raczej lista nieuporzadkowana wyboru funkcjonalnosci serwisu. Chociaz to tez zalezy jak autor grupuje elementy, bo jezeli bylo by to z gory okreslone jako np: poziome menu, czy poprostu menu wtedy kazdy element zaliczajacy sie do powyzszego zawieral by sie w <dd>.
WWW php.pl ma pare niedociagniec, ktorych zostanie pozbawiona w kolejnej wersji.
Standardy sieciowe traktuj nie jako gadget, ktory uatrakcyjni twoja strone, ale jako cos dzieki czemu masz jako webmaster pewnosc, ze twoja strona wyglada w 99,9% ok w kazdym srodowisku i w kazdej przegladarce. To 0,1% zostawiamy dla ksiedza

Mowiac ok mam na mysli poprawnie wyswietlana, dajaca sie uzywac w kazdych warunkach, co nie jest tozsame ze stwierdzeniem, ze wyglada tak samo. Pamietaj, ze dostepnosc strony dajacej sie otworzyc zarowno na pc z ie4 co na ie6,ff,operze, czy komorce, palmtopie itd. to cos czym nie kazdy moze sie w dzisiejszych czasach pochwalic

Poza tym nie stosowanie standardow czesto oznacza to dyskryminacje pewnej grupy userow np: niepelnosprawnych, ktorzy nie sa w stanie odczytac twojej www, czy tez sie wogole po niej poruszac. Z tego co wyczytalem w necie taka niewiedza moze kosztowac webmasterow np: ze Stanow Zjedonoczonych, gdzie jest obowiazek stosowania zasad section 508(accessibility). Na pytanie jak profesjonalne witryny chcesz robic musisz sobie odpowiedziec sam i dac sie przekonac ze pisany poprawnie semantycznie kod, ktory uwzglednia wiele czynnikow jest zawsze lepsza wizytowka ciebie jako tworcy niz jakies badziebie, co wyglada slicznie, ale wczytuje sie dluzej i tylko dla wybranej grupy ludzi posiadajacych odpowiednia konfiguracje sprzetowa

A co do tego div i table. Div to element blokowy definiujacy pewna zawartosc. Table to element tablicowy sluzacy do wyswietlania danych tabelarycznych. Dwa rozne elementy sluzace do czego innego. Wiecej na w3c.org