HTMLowy XHTML?

Grzebiąc sobie po archiwach grupy pl.comp.lang.php natknąłem się na wzmiankę o tzw. teście porneLa. Test ten dotyczy sprawdzenia czy rzeczywiście to co pracowicie stworzyliśmy jest pełnowartościowym, możliwym do pełnego wykorzystania XHTML'em czy też jednak nie. Jak się okazuje, samo sprawdzenie strony Validatorem W3C niewiele daje, gdyż nie wykrywa on pewnego drobnego, a jednak ważnego szczegółu. Szczegółem tym jest sposób określenia Content-Type. Bardzo często spotyka się strony chwalące się znaczkiem zgodności z XHTML, które wysyłają dokument z nagłówkiem Content-Type: text/html co powoduje, że będzie on traktowany jako zwykły, najczęściej jeszcze błędny dokument HTML. Aby wykorzystać w pełni możliwości naszego X powinien on zostać wysłany z nagłówkiem application/xhtml+xml. Niestety odnośnie tej drugiej możliwości standardy W3C określają ją jako 'SHOULD', a nie 'MUST' wobec czego takie strony są zgodne ze standardem XHTML aczkolwiek tak samo (o ile nie mniej) użyteczne jak zwykły HTML.

Aby jednak nie przepisywać napisanych już tekstów teraz garść odnośników:
  • Irracjonalne uwielbienie dla XHTML - strona porneLa, na której możemy poczytać jak dokładnie powinien wyglądać poprawny XHTML i dlaczego jednak go używać plus oczywiście wcześniej wspomniany "test porneLa"
  • Content Negotiation - czyli co zrobić jeśli naszą stronę w XHTML będą odwiedzać internauci wyposażeni w przeglądarki nieinterpretujące lub interpretujące XHTML czy chociażby google.
  • XHTML Media Types - krótka specyfikacja z W3C
A na koniec dodam taki jeden miły szczególik: po wysłaniu application/xhtml+xml nasza nowoczesna przeglądarka (np. Firefox) zamienia się w niezły validator, który bonusowo nie jest wrażliwy np. na to, że generujemy strony na podstawie danych przechowywanych w sesji co jak wiadomo jest oczywistą bolączką validatora z W3C ;)

Komentarze do wpisu "HTMLowy XHTML?":

Jeszcze nie ma żadnych komentarzy. Twój może być pierwszy.

Dodaj komentarz:

Textile Lite włączony ( szczegółowy opis znaczników ):
*strong* | # lista numerowana | * lista wypunktowana | _em_ | __italic__ | "link":http:// | bq. cytat.