Siedem śmiertelnych grzechów markupu

7. Niezakodowane encje w XHTML

XHTML wymaga, by niektóre encje były zakodowane. Niezakodowane ampersandy (&) w linkach i osadzonych skryptach JavaScriptu to głónwe przyczyny kłopotów, z jakimi sie borykamy. Więc jeśli masz takie linki jak następujący:

http://www.mysite.com/blah&story.htm

musisz zakodować znak ampersand, żeby być zachować zgodność ze standardami:

http://www.mysite.com/blah&story.htm

To samo dotyczy to również wszystkich ampersandów, jakie pojawiają się w skryptach w twoim dokumencie. Jeśli skrypt jest zewnętrzny wobec dokumentu, nie ma potrzeby do kodowania encji, ale jeśli jest osadzony w dokumencie, upewnij się że stosujesz kodowanie.

Jest to niestety jeden z najczęstszych problemów, na jakie natrafiamy przypadku zawartości generowanej dynamicznie przez systemy CMS i serwery reklamowe. Podobnie niektóre skrypty po stronie serwera stosują takie nie zakodowane ampersandy. Spawdź, czy twoi programiści poprawnie za kodowali encje w każdym dynamicznym dokumencie, jaki jest wysyłany do przeglądarki. Zauważ zakodowanie encje nie przeszkadzają twoim linkom ani integralności skryptów.