MozillaPL.org - polskie centrum Mozilli

Główne menu:

[xhtml] Walidacja xhtml11

Jak tworzyć strony WWW zgodnie ze standardami

Moderator: Pomocy?!

[xhtml] Walidacja xhtml11

Postautor: Gość » 11 lipca 2007, 22:21

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4

Pytanie dlaczego przeglądarka firefox (zresztą opera też ) obsługuje atrybuty typu align (który w specyfikacji xhtml11 został usunięty) np.:
Kod: Zaznacz cały
<p align="center">
   łó<br/>ąźżć
</p>


Powyższy przykład interpretowany jest poprawnie, co gorsza znacznik align działa poprawnie centrując tekst na stronie

Dodałam, że mój nagłówek Content-Type ma wartość application/xhtml+xml;charset=utf-8

Kod strony:
Kod: Zaznacz cały
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Szablon XHTML1.1a</title>
  </head>
  <body>
  <p align="center">
   łó<br />ąźżć
  </p>
</body>
</html>
Gość
 

Postautor: helios » 11 lipca 2007, 23:34

Przeglądarka: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.4) Gecko/20061201 Firefox/2.0.0.4 (Ubuntu-feisty)

Według mnie FF próbuje w tym przypadku zgadywać intencje autora strony, ponieważ są one czytelne. Atrybut "align" nie istnieje w XHTML, ale wiadomo dokładnie, po co został użyty. Zgodność ze specyfikacją przede wszystkim ma sprawić, aby interpretacja kodu źródłowego stron nie wymagała od przeglądarek "zgadywania". Z drugiej strony nie chodzi przecież o ograniczenie dostępu do strony, którą można bez większego trudu wyświetlić. W skrócie chodzi o znalezienie "złotego środka" :). Gdyby brakowało jakiegoś znacznika, cudzysłowu (itp.), FF by tej strony nie wyświetlił (kod byłyby niejednoznaczny i algorytm generowania strony musiałby być bardziej skomplikowany).
helios
 
Posty: 217
Z nami od: 10 sierpnia 2005, 18:15
Lokalizacja: Gdańsk

Postautor: Karolaq » 12 lipca 2007, 00:02

Przeglądarka: Opera/9.22 (X11; Linux i686; U; en)

dla mnie to jest glupie. align to kropla w morzu. nawet font dziala :/
sa standardy i trzeba sie ich trzymac. tak powinno byc. jezeli czegos brakuje, to powinny wychodzic kolejne standardy.
IE pozwala na brak jednstek przy podawaniu wymiarow elementow... czy mozna to nazwac udogodnieniem? co z tego, ze pewnie autorowi chodzi o piksele. to potem wszystkie przegladarki musza to obslugiwac, bo bedzie, ze nie chca pomagac
Karolaq
 
Posty: 22
Z nami od: 24 czerwca 2007, 21:23

Postautor: Gość » 12 lipca 2007, 00:33

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4

Dokładnie … usunięcie znaczników prezentacji i przeniesienie ich do stylów css miało za zadanie oddzielić warstwę prezentacji od struktury dokumentu. Jeśli przeglądarka nie przestrzega tych założeń benfit z korzystania xhtml maleje. Dla osób nie mogących się odzwyczaić od stosowania atrybutów typu align można użyć xhtml 1.0 Transient w którym znacznik jest tylko przestarzały, a nie usunięty. Z założenia xhtml miał ściśle kontrolować developera i wyświetlać informacje o błędzie ( tak jak to robi w przypadku napisania <br> zamiast <br/> - pojawia się wówczas „parsererror”)

Dlatego nie rozumiem intencji autorów przeglądarki, którzy dopuszczają i interpretują stosowanie usuniętych znaczników??
Gość
 

Postautor: Tomek » 12 lipca 2007, 08:35

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4

Stworzenie radykalnej przeglądarki, która by nie dopuszczała wyświetlania tego czego nie ma w specyfikacji... mijało by się z celem... chyba że wszyscy pisaliby strony zgodnie ze specyfikacją (a to jest mżonką). Sytuacja zaś jest taka, że niestety wiele stron nie trzyma się zasad... ograniczenie więc dostępu do nich... zniechęcało by ZU do Fx. A chyba nie o to chodzi. Fx dąży do 100% zgodności ze specyfikacjami, ale nie oznacza to, że nie pozostawia sobie "marginesu" na pomysły webmasterów...
"Mym sojusznikiem jest Moc, i potężnym sojusznikiem ona jest." -- Mistrz Yoda
Tomek
Moderator
 
Posty: 9041
Z nami od: 19 sierpnia 2004, 06:52

Postautor: Gość » 12 lipca 2007, 09:17

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4

W takim razie jaka jest różnica w interpretacji dokumentu pracującego w trybie <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" „http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> a <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ?
Gość
 

Postautor: TroPtyN » 12 lipca 2007, 13:20

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4

Różnice pomiędzy XHTML 1.0 a XHTML 1.1 są drobne:

1. Atrybut lang został usunięty na korzyść xml:lang.
2. Atrybut name usunięty z <a> i <map> na korzyść id.
3. Znacznik <style> jest w Deprecated.
4. Dodana notacja Ruby.

Nie pamiętam czy coś jeszcze było. Oprócz tego XHTML 1.1 POWINIEN mieć MIME application/xhtml+xml.
TroPtyN
 
Posty: 51
Z nami od: 18 stycznia 2005, 10:47
Lokalizacja: często-chowająca się mieścina

Postautor: Karolaq » 12 lipca 2007, 16:09

Przeglądarka: Opera/9.22 (X11; Linux i686; U; en)

e tam. na nic te standardy tak naprawde.
roznice miedzy XHTML 1.0 a XHTML 1.1? nie ma
roznice to sa miedzy HTML a XHTML: pierwsze to SGML drugie XML.
w ogole co ja gadam, HTML, to HTML, XHTML nie istnieje :/
moga wymyslac nowe specyfikacje, ale jak mamy IE6.0, to na co nam to? wiekszosc korzysta z IE, to i tak strony "powinny" byc wyswietlane w IE, wiec po co nam to wszystko?
IE7.0 uaaa, no po prostu cud technikil. na pirackim XP nie zainstalujesz tak latwo, viste i tak malo kto instaluje na stale.
nadzieja to raczej jest w umiejetnym korzystaniu z CSS.
Opera w wersji 9.5 bedzie miala pelna obsluge CSS (pelna?). Gecko i Safari tez jakos daja rade - kwestia czasu do pelnej obslugi.
teraz tylko uzywac np text-shadow czy innych webdwazerowych opcji ;)
kto pojdzie do kolegi z inna przegldarka, zobaczy, ze strona moze lepiej wygladac, to od razu zainstaluje cos lepszego.
poki co, takie pytania nie maja zbytnio sensu i nie ma po co wnikac, dla dlaczego jakas przegladarka pozwala na align (o jej!).
Karolaq
 
Posty: 22
Z nami od: 24 czerwca 2007, 21:23

Postautor: diablownik » 12 lipca 2007, 20:18

Przeglądarka: Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.9a7pre) Gecko/2007071005 Minefield/3.0a7pre

TroPtyN pisze:Oprócz tego XHTML 1.1 POWINIEN mieć MIME application/xhtml+xml.

To 1.0 powinien. 1.1 już "musi" według specyfikacji ;)

Co do IE 7.0, to nie obsługuje on nawet XHTML-a 1.0 (tzn. tego czystego - wywala się przy nim totalnie). Właśnie dlatego przejście na XHTML-a jest niemożliwe.
Gdyby Firefox rzeczywiście przestrzegał ściśle wszystkich standardów, to nie działałoby na nim większość stron i korzystałoby z niego tylko kilka procent użytkowników. Sprawa może wyglądałaby inaczej, gdyby nie I Wojna Przeglądarek i później lata dominacji Internet Explorera. Efektem są różne przyzwyczajenia webmasterów, choćby do używania wszędzie "align".
No ale teraz możemy tylko gdybać i czekać, aż IE straci poparcie albo zostanie chociaż dostatecznie poprawiony przez Microsoft (albo jedno i drugie).
diablownik
 
Posty: 375
Z nami od: 02 sierpnia 2006, 14:10

Postautor: spirit » 20 stycznia 2009, 20:20

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3

Sorry że odgrzewam ale zaciekawiła mnie treść tego posta. Faktycznie nawet odpowiedni Mime dla XHTML-a w przypadku przeglądarek pozwala na stosowanie przestarzałych znaczników i atrybutów.

Od jakiegoś czasu pisze sobie mały kursik. Z tego co obserwuje i tak wszystko co związane z językami znacznikowymi zależy od przeglądarki. Dla przykładu:

- mówienie, że ktoś stosuje XHTML (kiedy wysyła go z Mime Type text/html) jest conajmniej dziwne. Niby sama specyfikacja tylko zaleca (nie wymaga - jakiś nonsens) by był to application/xhtmx + hml. Problem w tym, że przy text/html przeglądarki taki dokument traktują jak zwykłego HTML-a. Wiec różnica polega tylko i wyłącznie na innym DOCTYPE na początku strony (a czy napiszesz span czy go oslaszujesz efekt będzie taki sam - i gdzie tu twój xhtml?).
- owszem, w przypadku stosowania jakiegoś X DOCTYPE i text/html można mówić o próbie utrzymywania poprawności syntaktycznej stosując validatory (które i tak jak każdy program zawierają błędy, dlatego wszystkich różnic w interpretacji kody text/html a application/xhtmx + hml nie wyłapiesz za ich pomocą - a powiem wam że jest ich sporo, łatwo można się wyłożyć).
- jeśli już ktoś się uprze na application/xhtmx + hml, nagimnastykuje by IE jakoś podołała dla syfu jest mała niespodzianka. Jak powiedziałem na początku mojej wypowiedzi wszystko i tak zależy od przeglądarki. Dla przykładu znacznik font=”…” wg. specyfikacji jest wycofany. Dziwne, że dla XHTML 1.1 z poprawnym MIME parsery przeglądarki nic sobie z tego nie robią, wszystko zostaje wyświetlone, błędów nie ma. Ale co się dziwić, takie są wymagania rynku, o użytkownika trzeba walczyć nawet kosztem zgodności.

IE udupił XHTML-a, jego rozwój, nic tego nie zmieni. Na domiar złego M$ prawie wcale nie jest zainteresowany solidnym rozwojem swojego badIEwia. Zobaczymy co przyniesie przyszłość (HTML5, XHTML5, XHTML2). Martwi ponowne rozbijanie standardu.

Konkluzja jest taka. Owszem starać się pisać poprawnie, jednak nie popadać w skrajność. Wiele rzeczy jak chociażby same przeglądarki, DTD (stosowane przez walidatory) i tak w pewnych kwestiach nie są zgodne ze specyfikacjami W3C. Dla purystów jako punkt odniesienia powinna zostać tylko i wyłącznie specyfikacja. Dla realistów kompatybilność między badziewskimi softami.

I przede wszystkim dużo czytać. Tego nigdy za wiele, samo X w DOCTYPE na początku kodu strony niewiele mówi/daje, niewiele zmienia. W ogóle deklaracja typu dokumentu (DTD) w żaden sposób nie wymusza na przeglądarce w jakim języku ma czytać stronę. DTD jest tylko użyteczny dla walidatorów, wymusza lub nie dla przeglądarek tryb Quirks i zawiera encje nazywane (choć można stosować równie dobrze numerowane).

Stosowanie poprawnego XHTML-a (z odpowiednim mime) ma sens jeśli korzysta się z pozostałych języków XML-owych. W przeciwnym razie HTML Strict w zupełności wystarczy (tylko trzymać się prawidłowej składni).

Troszkę więcej można poczytać na mojej stronce www.crimsteam.site90.net
W miarę wolnego czasu staram się zbierać na niej wiele ciekawych informacji z różnych źródeł, a przede wszystkim pokazywać wszystko na przykładach (takie mam założenie). Co wyjdzie czas pokaże.
spirit
 


Wróć do Tworzenie stron WWW

Kto jest online

Zarejestrowani użytkownicy: Baidu [Spider], Bing [Bot], dexter, Google [Bot]

Przejdź do powiązanej strony

Nawigacja:

Stopka: