Trzy sposoby na kodowanie znaków w XHTML

 

Po pierwsze musimy zdefiniować z jakiego języka korzystamy. Dla języka polskiego wystarczy linijka:

<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="pl-PL">

W przypadku np. języka angielskiego, zmienilibyśmy atrybut lang na „en”. Z kolei atrybut dir jest odpowiedzialny za kierunek tekstu. W zachodniej kulturze przyjął się sposób czytania od lewej do prawej, ale np. na Dalekim Wschodzie można się spotkać z kierunkiem odwrotnym.

Co jednak z samym kodowaniem? UTF-8 i basta, chciałoby się powiedzieć. Nie ma sensu wybierać innego standardu, a zwłaszcza narzuconego przez Microsoft kodowania Latin-2. UTF-8 zapewnia działanie na wszystkich platformach, także wszystkie polskie ogonki wyświetlą się prawidłowo.

Ok, jak to zapisać? Obiecane trzy sposoby:

  • Najprostszy: w kodzie strony jako element HTML
    <meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8” />
  • Wysublimowany: w kodzie wykonywanym po stronie serwera przy użyciu PHP
    <? header(“Content-Type: text/html; charset= UTF-8”); ?>

    Mała uwaga – koniecznie umieść ten kod przed wyświetleniem jakiejkolwiek zawartości strony.

  • Twardogłowy: w pliku .htaccess, znajdującym się w głównym katalogu serwera Apache. Wystarczy dodać linię:
    AddType text/html;charset=UTF-8 html

    Dzięki temu wszystkie pliki z rozszerzeniem .html będą miały zapewnione poprawne kodowanie.

Nie zapomnijcie też o ustawieniu właściwego kodowania (UTF-8) w edytorze tekstu, w którym zapisujecie strony!

Czy te informacje przydały Ci się? Podziel się swoją opinią w komentarzu! :-)

 
 

Rodzaje DOCTYPE – z czym to się je?

 

Klauzula DOCTYPE, znajdująca się w nagłówku pliku .html definiuje jak przeglądarka ma interpretować kod zawarty w pliku. Obecnie używa się głównie trzech standardów:

  • XHTML 1.0 Transitional
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    Standard ten jest przejściowy – używany głównie przy modernizacji istniejących stron. Akceptuje on to, co dziś określa się jako zły styl kodowania – używanie tagu <font>, layout w formie tabel itd.

  • XHTML 1.0 Strict
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    Standard ten jest najlepszym wyborem dla nowej strony. Jest ściśle kompatybilny z wytycznymi XHTML 1.0.

  • XHTML 1.1
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

    Standard nowszy niż XHTML 1.0, ale z tego względu nie jest obsługiwany poprawnie przez wszystkie przeglądarki.

Wybór standardu jest sprawą drugorzędną. Najważniejsze, by wybrać JAKIKOLWIEK z nich, bo inaczej przeglądarka wyświetli naszą stronę w tzw. quirks mode. A to oznacza dla nas różną interpretację kodu, czyli różny wygląd w różnych przeglądarkach.

 
 

Warunkowe programowanie pod IE – I’m lovin’it!

 

Nie ma przeglądarki doskonałej. Chociażby w odniesieniu do wsparcia CSS widać ogromne rozbieżności między standardami, a implementacją. Jednak są przeglądarki lepsze, gorsze, te złe i Internet Explorer :]

Jak sobie radzić z IE? Sami projektanci widocznie uznali, że ich przeglądarka zachowuje się wyjątkowo dziwnie w niektórych sytuacjach i udostępnili developerom furtkę w postaci instrukcji warunkowych specjalnie dla IE. Czy to nie jest przyznanie się do błędu? Ale do rzeczy…

Wszystko wyjaśnia ten fragment kodu:


<!--[if IE 6]>
Tylko IE wykona tę instrukcję.
<![endif]-->

Instrukcja pozwala nam na wykrycie przeglądarki i jej wersji, możliwe jest także zastosowanie instrukcji gt lub lte, które odpowiednio oznaczają wersję późniejszą niż i równą lub wcześniejszą.

Tutaj możecie otrzymać więcej informacji na temat instrukcji warunkowej IE.

I małe sprostowanie. Nie, nie jestem haterem Microsoftu, ani ich produktów. To tylko pozostałości frustracji po IE 6 ;-)

 
 
« poprzednie wpisy