Wczoraj czytając Projektowanie serwisów WWW. Standardy sieciowe się zszokowałem. A mianowicie wyczytałem, że jeśli umieścimy prolog XML, to IE przechodzi w tryb "dziwactw". Znaczyło by, że jeśli na wszystkich swoich stronach stosowałem prolog, oraz kompletną deklarację typu dokumentu, z myślą, że chce żeby wszystkie przeglądarki pracowały w trybach standardowych, to w IE nie udało mi się tego osiągnąć. Tak więc... Nigdy nie doceniłem jej trybu standardowego ;/.
I teraz się zastanawiam, czy swoje kolejne strony pisać z prologiem, czy bez. Kłopoty z IE oczywiście zawsze miałem (ten jogg zresztą nie wyświetla się poprawnie, ale mi się poprostu nie chce naprawiać), ale jakoś sobie radziłem. Zawsze korzystam z hacku:
* html #cos {}
Do napisania reguły tylko dla IE.
Więc niech mi ktoś powie, co daje prolog XML, jeśli coś daje, bo jak nie, to chyba nie będę go stosował i po ewentualnym problemie.
Prolog sprawia że "normalne" przeglądarki stosują parser xml i strony są odrobinę szybciej renderowane. Za to IE wariuje i layout się rozwala na różne sposoby. IMHO nie warto, nawet validator w3c się do tego nie przyczepia, chociaż w standardzie jest napisane że trzeba <? xml ?>
można wstawiać prolog xml tylko dla nie-ie
Ale przez skrypt server-side? Czy jak?
W PHP to będzie coś na kształt:
if(!preg_match("/msie/i",$_SERVER["HTTP_USER_AGENT"])) {
print("<" . "?xml version=\"1.0\" encoding=\"utf-8\"?" . ">\n");
}
nie przyglądałem się temu, wziąłem na szybko z google :)
No w PHP, to proste... Tak samo jak z typem mime. Myślałem poprostu, że da się to zrobić bez PHP ;p