premier.gov.pl

Skoro stronę głowy państwa już oceniliśmy, przyszła teraz kolej na stronę drugiej osoby w państwie – premiera! Po tym jakże fenomenalnym wstępie, przystąpmy od razu do meritum sprawy.

  • Strona od samego początku *ekhem*niczym rząd*ekhem* ciut nawala
  • Język dokumentu jest definiowany aż w trzech miejscach. Dwa pierwsze – standardowy i polecany lang na html i zupełnie zbędny meta[http-equiv="content-language"] wskazują na pl (międzynarodowy skrót od języka naszego). Natomiast trzeci – meta[name="language"] – wskazuje na… polish. W żadnym ISO o takowym skrócie języka nie przeczytałem.
  • Tytuł się zmienia na podstronach – fajnie. Szkoda tylko, że dla mnie niewidocznie. Dobry zwyczaj – pierwszy człon to nazwa aktualnej podstrony, a dopiero potem tytuł strony. Tak jest wygodniej.
  • Cóż za szowinizm crawlerowy! Tylko googlebot, Slurp i msnbot dostały swoje własne regułki, a resztę nieładnie potraktowano meta[name="robots"]!
  • A teraz z kolei szowinizm przeglądarkowy! Czemu IE dostaje swoje własne link[rel="shortcut icon"], a reszta link[rel="icon"]?!
  • Jest RSS – fajnie. Ale nie byłbym sobą gdybym nawet z pozytywa nie zrobił negatywa 😉 Toteż zapytuję: a gdzie ATOM?
  • 3 arkusze stylów. O 2 za dużo. Poza tym media są feee… Teraz na topie znalazły się @media-queries.
  • No proszę, tu nawet zombiaków miło przyjmują – mamy arkusz specjalnie dla IE 6 i jeszcze starszych.
  • 11 (sic!) plików JS. O 9 za dużo. I oczywiście radośnie sobie w head siedzą.
  • Stara wersja jQuery.
  • <!-- i --> w script po prostu śmieszy. To było dobre w IE5.
  • Cufon? Lepiej @font-face.
  • jQuerowe live już zdeprecjonowano.
  • Kod body strasznie nieczytelny (plus za kompresję ;)), ale DirtyMarkup pomógł.
  • O, menu służące do przeskakiwania do odpowiednich sekcji strony! Ładne, ładne. Szkoda, że tak rzadko je widać.
  • Moim bardzo skromnym zdaniem, pewien divitis.
  • Dobrze wykonany image-replacement na logo (h1 i a z ujemnym text-indent), chociaż istnieją lepsze techniki.
  • Uaa… name dla linków w menu? Nie można jakoś ładniej?
  • Wersja WAI nawet jest. Chociaż oprócz zwiększonego kontrastu za dużo zmian nie zauważyłem (szczerze to ta zmiana kontrastu jak dla mnie wręcz zmniejszyła czytelność).
  • Dawno nie widziałem label dla przycisku wyszukiwania… A gdyby ktoś pomyślał, to by tam wstawił button z image-replacement i normalne value zamiast tego input[type="submit"] i byłoby ładniej.
  • Ładny slider. Oczywiście tradycyjnie pusty element nawigacyjny wisi w próżni, zamiast być wstawiany przez JS.
  • Nie no! Wiadomości to lista! Połechtali mnie.
  • <img src="lay-gfx/baner-noc.jpg">

    Ale tym już lekko poranili.

  • Stopka tak w połowie kodu się zaczyna 😉
  • A czemuż to social linki nie są w liście jak przystało?
  • Mamy tu przykład bardzo rozbudowanej, użytecznej stopki, która spełnia ważną rolę nawigacyjną.
  • Ale ten adresik kancelarii to można by w address walnąć.
  • Czemu link „Zgłoś błąd” nie ma poprawnego href i działa tylko z JS? Jakaś aluzja polityczna?
  • I na samym końcu nie do końca zoptymalizowane GA i jakiś pusty element wymagany przez fejsa (czemu se tego sam nie wstawi? bezsens!).
  • A teraz CSS:
    body{color:#282725;font:12px Arial;background:#fff url('../lay-gfx/bg-body.png') repeat-x;text-align:center;margin:0 auto;padding:0;line-height:16px;width:100%;}
    body#sub {color:#282725;font:12px Arial;background:#fff url('../lay-gfx/bg-body.png') repeat-x;text-align:center;margin:0 auto;padding:0;line-height:16px;width:100%;}

    Ma to sens?

  • Outline:none dla linków.
  • Nie korzysta się tu z kaskadowości i dziedziczenia. Style są często powtarzane.
  • Wiele nieefektywnych (i nieefektownych zarazem) selektorów typu id id.
  • #trailimageid {z-index:2000000000000;}

    Hmmm

  • Jeśli chodzi o JS, to za dużo zdeprecjonowanego, niewydajnego jQuerowego live.
  • Spojrzenie w plik scripts.js wystarczy, żeby wiedzieć, że funkcje natychmiastowego wywołania i brak wycieków do globalnego scope są obce programiście.
  • Spojrzenie w fpheader.js tym bardziej utwierdza, że pojęcia te są obce, a często stosowane na oślep (albo funkcja anonimowa albo jej jQuerowy odpowiednik). Obca jest także skrótowa notacja deklaracji zmiennych, korzystająca z przecinka.

Jaka zatem będzie ocena końcowa? Od strony HTML nie jest najgorzej (ba, są elementy, które mnie wręcz zachwycają!), ale CSS i JS najwyższych lotów już nie są. Tragicznie nie jest, ale dobrze też nie. Na szczęście jest jeszcze czas, żeby poprawić wszelkie niedociągnięcia 😀

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *