Wszystkie informacje o błędach validatora są opisane na stronie Explanation of the error messages for the W3C Markup Validator.
Strony testuje się on-line pod adresem validator.w3.org.
Błędy znajduje także i dodatkowo próbuje naprawić HTML Tidy.
W Operze można automatycznie wysłać do Validatora każdą aktualnie otworzoną stronę skrótem klawiszowym Ctrl+Alt+V. Są dostępne dodatkowe przyciski dla Opery, umożliwiające sprawdzenie HTML i CSS.
Obecnie jest wiele odmian i wersji języka HTML. Zarówno przeglądarka jak i validator, aby poprawnie zinterpretować stronę, muszą wiedzieć, z jaką odmianą języka mają do czynienia. Należy wybrać i umieścić w kodzie odpowiedni DOCTYPE (lista doctype'ów na W3C). Najbardziej tolerancyjny i najczęściej stosowany jest HTML 4.01 Transistional. Zaleca się używanie XHTML/1.0 Strict, znacznie nowszego i kompatybilnego z XML, ale jego użycie często przerasta umiejętności webmasterów.
To są niestandardowe atrybuty. Zamiast nich z powodzeniem można użyć ich odpowiedników w CSS.
Zamiast TOPMARGIN="20" w arkuszu stylów wystarczy podać:
body {margin-top: 0; padding-top: 20px;}
Różne przeglądarki mają różne domyślne ustawienia margin i padding, więc gdy ustawia się jedno, należy też drugie.
Zamiast <td background="tlo.jpg" bgcolor="#112233"> najlepiej użyć kodu HTML:
<td class="przyklad">
oraz CSS:
.przyklad {background: #123 url('tlo.jpg');}
Zamiast <style> należy użyć <style type="text/css">.
Zamiast <script language="javascript"> należy użyć <script type="text/javascript">. VisualBasic nie powinien znaleźć się na WWW.
Wszystkie obrazki muszą mieć atrybut ALT krótko je opisujący. Jeśli obrazek jest elementem dekoracyjnym, to zamiast zbłędnego opisu typu "zielona kropka" należy podać pusty ALT.
<img src="przyklad.jpg" alt="przykladowa opisana grafika">
<img src="kropka.gif" alt=" ">
Mało kto zdaje sobie sprawę, że ciąg "</" nie ma prawa wystąpić w skrypcie (aby przeglądarki nierozumiejące treści skryptu mogły łatwo go ominąć). Są 2 rozwiązania:
</" zamienić na "<\/", np.: document.write('<h1>hello<\/h1>');<script type="text/javascript">//<![CDATA[
treść skryptu
//]]></script>var--;. Trzeba także pamiętać, że komentarz otwarty wewnątrz <script> musi być zamknięty - inaczej nie spełni swojego zadania, a wręcz spowoduje zignorowanie reszty strony przez niektóre przeglądarki.Wszystkie znaki "&" w adresach muszą być zamienione na "&". Odnośniki są także treścią HTML i jako takie muszą być w nim napisane. Jest to konieczne, aby uniknąć mylenia się parametrów w odnośnikach ze znakami specjalnymi (encjami) HTML (np. gdyby odnośnik miał zawierać parametry nazwane nbsp, amp, pound, itp.).
Poprawianie "&" w odnośnikach faktycznie może być uciążliwe. Na statycznych stronach można je automatycznie poprawić za pomocą HTML Tidy. W PHP należy użyć funkcji htmlspecialchars(), np.
echo '<a href=".htmlspecialchars($url).'">link</a>';
Jeśli problem dotyczy twojej strony, najwygodniej zmienić system odnośników, używając mod_rewrite w Apache. Zamiast strona/index.php?id=bla&bla, używać prostego strona.com/bla/bla
Dla osób, które nie chcą się zmagać z anglojęzycznym validatorem W3C pomocny może być polski program Tagik. Niestety, nie obsługuje on wszystkich wersji HTML, dlatego nie może on zastąpić całkowicie validatora W3C.
Typowa opinia redaktora: "To nie moja wina. To nasz program do generowania dokumentów HTML został tak zaprojektowany" (często chodzi tu o system z interfejsem użytkownika w postaci przeglądarki WWW).
To prawda. Często nie jest to wina użytkowników. Jeśli jest to system oparty na formularzach, w które wpisuje się tekst nieoznakowany, należy zwrócić się do autora tego interfejsu lub osoby odpowiedzialnej za jego działanie. Jeśli nie wiadomo, jak i gdzie powstają błędy, należy wynikowy dokument zwalidować na serwerze W3C i przesłać raport z walidacji osobom odpowiedzialnym za działanie systemu.