Dzień 6: Wybór nagłówka DOCTYPE
Rozpoczynasz zdania z dużej litery, rozpoczynaj więc strony HTML od nagłówka DOCTYPE
(określenia typu dokumentu). To podstawowe zasady gramatyki.
Kto na tym skorzysta?
Przede wszystkim Ty (choć przeglądarki również - zobacz sekcja "Zobacz także" na dole). Wiele wskazówek w dalszej części będzie wymagało od Ciebie znajomości wersji standardu HTML, której używasz, ponieważ instrukcje dla różnych wersji będą się troszkę różnić. Sprawdź teraz jaki masz DOCTYPE
albo go dodaj jeżeli nie masz żadnego.
Jak to zrobić?
Możliwe, że już masz linię DOCTYPE
. Obejrzyj kod swojej strony - DOCTYPE
(jeżeli istnieje) znajduje się na samym początku, jeszcze przed tagiem <html>
.
- Jeżeli używasz standardowych szablonów blog.pl prawdopodobnie nie masz nagłówka
DOCTYPE
w ogóle. Mimo, że blog.pl posiada kilkanaście predefiniowanych szablonów, w momencie pisania tego tekstu (kwiecień 2003) żaden z nich nie zawiera liniiDOCTYPE
. - Jeżeli używasz domyślnego szablonu w Movable Type, nagłówek
DOCTYPE
prawdopodobnie zawiera fragment "XHTML 1.0 Transitional
". To jest w porządku. - Jeżeli używasz predefiniowanych szablonów w Radio Userland, Manili lub Bloggerze, Twój
DOCTYPE
prawdopodobnie zawiera fragment "HTML 4.01 Transitional
". To również jest ok. - Inne poprawne wartości
DOCTYPE
zawierają różne wersje HTML, np. "HTML 4.01 Strict
", "XHTML 1.0 Strict
", "XHTML 1.1
" i jeszcze kilka innych (link do pełnej listy poprawnych wartości znajdziesz poniżej, w dziale "Zobacz także"). Wszystkie są w porządku.
Jeżeli już posiadasz nagłówek DOCTYPE
, nie zmieniaj go. Jednak jeśli nie widzisz linii DOCTYPE
przed tagiem <html>
, dodaj poniższy kod:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Z powodów technicznych, których nie chciałbym tutaj omawiać (zobacz linki w sekcji "Zobacz także" poniżej jeśli Cię to interesuje) możliwe jest, że zobaczysz pewne drobne zmiany w wyglądzie strony po dodaniu tego kodu. Jeżeli to się zdarzy (i tylko wtedy), możesz zastosować rozwiązanie kompromisowe i użyć częściowego kodu DOCTYPE
:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Zwróć uwagę, że każda strona Twojego serwisu czy bloga powinna zawierać definicję DOCTYPE
, a więc sprawdź wszystkie strony, szablony itd.
- niByLog włącza wygenerowany kod bloga, pluginów itd. w środek strony, z której jest wywołany. Nagłówki strony HTML powinny się znajdować na stronie głównej, a nie w szablonach, zatem wystarczy tylko sprawdzić jedno miejsce - główną stronę bloga, na której jest umieszczone wywołanie skryptu (np.
index.php
). - W blog.pl należy dodać linię
DOCTYPE
w szablonach "Strona główna", "Archiwum", "Strona z komentarzami" i "Księga gości" poprzez menu "edytor html". - Użytkownicy Movable Type powinni sprawdzić szablony "Main Index", "Master Archive Index", "Category Archive", "Date-Based Archive" i "Individual Entry Archive" oraz każdy inny szablon archiwum jaki został dodatkowo stworzony.
- Użytkownicy Radio Userland i Manili powinni sprawdzić zarówno "Main template" jak i "Home page template".
- Użytkownicy Greymatter powinni sprawdzić "Main Index-Related Templates", "Archive-Related Templates" i "Entry-Related Templates".
- Użytkownicy Bloggera powinni umieścić
DOCTYPE
w głównym szablonie. Jeżeli szablon "Archive template" definiuje osobną stronę (to znaczy, jeżeli zaczyna się od taga<html>
) to również powinien być uzupełniony o nagłówekDOCTYPE
.
Dla dalszego ciągu tego kursu ważne jest żeby wiedzieć czy używasz HTML 4
(w dowolnym wariancie), XHTML 1.0
(w dowolnym wariancie) czy XHTML 1.1
.
Zobacz także (strony w języku angielskim)
- W3C QA: List of valid DTDs you can use in your document, czyli lista poprawnych wartości
DOCTYPE
dla różnych wersji standardów dokumentów hipertekstowych. - A List Apart: Fixing Your Site With The Right DOCTYPE, czyli jak utworzyć poprawny nagłówek
DOCTYPE
. - MSDN: CSS Enhancements in Internet Explorer 6 - rozszerzone wsparcie dla CSS w IE 6, oraz wpływ deklaracji
DOCTYPE
na sposób interpretacji stylów. (Uwaga: ta strona nie działa w niektórych wersjach Netscape. To wina Microsoftu, nie moja.) - Quirks mode in Mozilla. Różny sposób interpretacji dokumentów HTML w Mozilli także zależy od wartości
DOCTYPE
.