czwartek, 7 stycznia 2010

6 rzeczy których nie powinno się robić podczas tworzenia stron internetowych

Przeczytałem niedawno krótki artykuł na temat tego, czego nie powinno się robić, a raczej czego powinno się robić (co nie znaczy, że nie wolno) podczas tworzenia stron.

Lista prezentuje się następująco:
1. Don’t forget to clear your floats.
2. Don’t use tables for your website layout… any part of it.
3. Don’t overuse absolute positioning.
4. Don’t forget that not everyone has JavaScript enabled.
5. Don’t overestimate the browser compatibility of your users.
6. Don’t forget that your website will be viewed by all types of monitor sizes.

Nie ze wszystkim tym, co widnieje powyżej muszę się zgodzić.

Wszystkie te punkty mają spore znaczenie, jednak chciałbym zwrócić uwagę na punkt 4.
Pytanie brzmi:
"A kto nie ma włączonego JavaScriptu?"
Owszem, bywają tacy którzy korzystają z wtyczek typu "NoScript" do Firefoxa, którą osobiście polecam, ale wchodząc na serwisy które posiadają jako taką "renomę" i tak JS się włącza, żeby zobaczyć jak czy nie ominie nas jakiś filmik itp.
Ponadto 95% użytkowników serwisów internetowych nie jest nawet świadoma, że jest coś takiego jak JS, a co dopiero mówić o wyłączaniu JS w przeglądarce, która, nawiasem mówiąc, jest domyślnie włączona.
"Jak to jest z tymi floatami?"
Prosta sprawa - jeśli ustawiasz blok jako float:left to nie zapomnij w następnym bloku równiez ustawić na float:left i odpowiednio dopasować szerokość bloku.
"A tabelki?"
Z tabelkami jest jak ze starymi kobietami. Troszkę makijażu i wszystko ładnie wygląda, ale jak przyjdzie dostosować się do nowej sytuacji, to lepiej sobie strzelić w łeb.
Tym nieco seksistowskim stwierdzeniem chciałem dać do zrozumienia, że utworzenie layoutu na tabelkach może i jest prostsze i szybsze, ale do czasu... Przychodzi taki moment w życiu każdego twórcy stron, że podejdzie do was Team Leader i powie: "Dodaj mi jeszcze jeden bloczek, ale nie na dole, tylko po prawej stornie layoutu". Wtedy w każdym miejscu gdzie było <tr><td> będziecie musieli dodać colspan="+1". A teraz wyobraźcie sobie, że wierszy macie 20. I co? W każdym miejscu będziecie zwiększać liczbę kolumn o jedną? Czy nie prościej wstawić relatywnego <div>'a który pieknie ulokuje się tam gdzie chcecie?

Relatywnego!

Podkreślam to słowo. Dlaczego? Ta sama kwestia. Jeśli ulokujecie kilka bloków "absolutnie" na stronie na następnie wpadnie wam do głowy pomysł, żeby zmienić ich ułożenie, albo dodać kilka nowych, to będzie dużo więcej roboty z tym.
"Nie przeceniaj możliwości przeglądarek."
Tutaj również można pokusić się o odrobinę polemiki. Od czasu kiedy Google zdecydowało, że przestaje wspierać serwisy dla IE6, naukowcy zanotowali polepszenie stanu zdrowia programistów i designerów. Co tu dużo mówić. IE6 nie jest dobrą przeglądarką. Jednak sa narzędzia, takie jak jQuery, Prototype, które potrafią sobie poradzić z mankamentami wszystkich niekompatybilnych ze standardem W3C przeglądarek z IE6 na czele.
"A rozmiar strony?"
Tutaj przemawiają do nas statystyki i to przede wszystkim na nich należy opierać zasady projektowania stron. Jeśli statystyka mówi, że 70% użytkowników korzystających z serwisu posiada rozdzielczość ustawioną na 1024x768 to oczywistym jest (przynajmniej powinno być), ze nie ustawimy nowego layoutu domyślnie na 1600x1200.