Skocz do zawartości

Przepisanie strony z HTMLa na XHTMLa


skps

Rekomendowane odpowiedzi

@kawa nie marnuj czasu na czytanie takich stron
Dlaczego? Na tej stronie jest z grubsza opisane dlaczego stosowanie XHTML to idiotyczny pomysł. Koszt stworzenia poprawnie działającej strony w XHTML będzie kilkukrotnie większy, dodanie tych paru slashy na końcu tagów... myślisz, że to coś zmienia?

Absolutnie nic, zwłaszcza jeśli strona dalej jest traktowana jako HTML (po dodaniu tych slashy staje się tylko niepoprawnym kodem HTML). Pomijając już to, że IE poprawnie napisanych stron w XHTML w ogóle nie obsługuje (tylko chce je ściągać na dysk). To tak samo jakbyś do tego posta dopisał "the" co drugie słowo a potem się uparł, że tekst jest po angielsku ;)

Nie rozumiem tego sztucznego wyolbrzymiania różnicy pomiędzy html a xhtml ?

Np. autor omawianej strony nie dość, że nie wysyła odpowiednich tagów (content-type: text/html, to jeszcze stosuje kodowanie windows a nie unicode które jest wymagane przez parsery XHTML). Faktycznie nie ma żadnych różnic... między HTML a błędnym HTML którego ktoś nazwał XHTML-em ;)

Teraz jest takie "niby coś" co udaje stronę w XHTML:

<... tagi XHTML ...>

<span style='color: blue'><span style='color:red' />eee</span><br>

Działa niby ok, ale nie jest ok, bo eee powinno być niebieskie a nie czerwone - jednak to prawidłowe działanie dla HTML (więc zakładamy, że nie ma różnic). Teraz dla odmiany dodajemy na początek:

<?header('content-type: application/xhtml+xml');?>

Co powoduje, że przeglądarki zaczynają dobrze interpretować stronę: jako XHTML. Skutek?

IE6 - "ściągnij plik na dysk" - właśnie straciłeś 50% gości na stronie

IE7 - wyświetla stronę... jak zwykły HTML bo mamy czerwony napis

FF - nic nie wyświetli, tylko pokaże komunikat błędu bo masz niedomknięte BR

Opera - również komunikat błędu

To początek problemów bo jaja ze skryptami są takie, że można się pociąć.

Odnośnik do komentarza
Udostępnij na innych stronach

pewnie macie racje że xhtml nie jest jeszcze w pełni przystosowany to ówczesnych przeglądarek, ale sama idea xhtml-a oddzielności treści nad formatem jak dla mnie jest perfekcyjna.

... a dzisiaj znowu poleciałem w googlach o 11 pozycji na słowo "sudety"... i tak oto z 18 wylądowałem po tygodniu na 62 :P ... i dalej nie wiem o co chodzi, więc za waszymi poradami uzbrajam się w cierpliwość ;)

SKPS - z nami w Sudety

Odnośnik do komentarza
Udostępnij na innych stronach

pewnie macie racje że xhtml nie jest jeszcze w pełni przystosowany to ówczesnych przeglądarek, ale sama idea xhtml-a oddzielności treści nad formatem jak dla mnie jest perfekcyjna.

To nie jest idea xhtml-a tylko css-ów. Równie dobrze działa w html-u. :P

Czekaj ale nie zaszkodzi przeredagowanie tytułu w taki sposób, żeby zawierał najważniejsze dla Ciebie słowa kluczowe.

Jestem w potrzebie - sprzedaje
cenne domeny regionalne za ułamek wartości
tylko do końca tyg. < link do ogłoszenia >

Odnośnik do komentarza
Udostępnij na innych stronach

To nie jest idea xhtml-a tylko css-ów. Równie dobrze działa w html-u.
Dokładnie, ludzie mylą te dwa zagadnienia, uszkadzają swój html (przez dodanie tych slashy na końcu) a parsery i ich biedni autorzy muszą sobie z tym radzić.

Dla "zwolenników XHTML" polecam otwarcie prawdziwej, dobrze zrobionej strony która wykorzystuje XHTML i renderuje się jako poprawny XHTML np. https://www.mozillaquestquest.com/ . Niestety jest to możliwe tylko w FF i operze, żadna wersja IE tego nie obsługuje.

W sieci tak na prawdę nie ma stron pisanych w XHTML, praktycznie wszystkie strony które "udają" (doctype) pisane w XHTML można wyrzucić do kosza i napisać od nowa, bo nie są one ani poprawnym HTML (zawierają pełno błędów spowodowanych tymi końcowymi slashami) a gdyby chcieć otworzyć je w trybie XHTML to nawet się nie wyświetlą tylko wywalą błąd parsera i na tym się skończy.

pewnie macie racje że xhtml nie jest jeszcze w pełni przystosowany to ówczesnych przeglądarek, ale sama idea xhtml-a

XHTML obecnie nie istnieje i zajmnie z 10-15 lat zamin stosowanie tego będzie w ogóle miało jakikolwiek sens. Żaden framework JS czy nawet wrapper do AJAX tego nie obsługuje, support w przeglądarkach które go mają kuleje, skrypty JS muszą być w większości pisane od nowa a to, że brak jednego znaku może spowodować całkowite wywalenie się strony może spowodować że ten standard nigdy się nie przyjmnie.

Nawet dodanie głupiego CSS-a czy skryptu do strony to w XHTML udręka, wpisanie głupiego komentarza tak samo.

Z resztą za 10-15 lat pewnie przeglądarki będą już dawno miały obsługę HTML5

Odnośnik do komentarza
Udostępnij na innych stronach

Dla "zwolenników XHTML" polecam otwarcie prawdziwej, dobrze zrobionej strony która wykorzystuje XHTML i renderuje się jako poprawny XHTML np. https://www.mozillaquestquest.com/ . Niestety jest to możliwe tylko w FF i operze, żadna wersja IE tego nie obsługuje.

Dobrze zrobina strona? A według jakiego standardu? Gdyby ta stronia nie została umyślnie pozbawiona jednej linijki to by wtedy była zgodna z jednym ze standardów.

Zgodnie ze standardami HTML i XHTML, DOCTYPE (skrót od "document type declaration") dostarcza walidatorowi informacji o tym, której wersji (X)HTML używasz i musi być on umieszczony na samej górze każdej storny internetowej. Nagłówki DOCTYPE są kluczowym komponentem spełniających standardy stron internetowch: bez nich znaczniki i CSS nie podlegają walidacji.

.

Odnośnik do komentarza
Udostępnij na innych stronach

Zgodnie ze standardami HTML i XHTML, DOCTYPE (skrót od "document type declaration") dostarcza >>walidatorowi <<

A niby co miałem pokazać za przykład, skoro stron pisanych w XHTML w internecie po prostu nie ma :) Ta była jedyną którą znalazłem i która na prawde używa języka XHTML. Według poniższych wytycznych strona jest interpretowana jako XHTML (w odróżnieniu od 99% stron, które są tylko popsutym HTML). XHTML to nie standard tylko język, inny niż HTML. Strona bez doctype wysyłana z nagłówkiem content-type: text/html jest pisana w HTMLu strona wysyłana z nagłówkiem content-type: application/... jest pisana w XHTML i doctype nie ma tutaj znaczenia.

https://lists.w3.org/Archives/Public/www-ht...00Sep/0024.html

documents served as text/html should be treated as HTML and not as XHTML.

https://www.w3.org/TR/xhtml-media-types/xht...edia-types.html

https://www.w3.org/TR/REC-xml-names/

https://www.w3.org/TR/xhtml1/#uaconf

https://www.hixie.ch/advocacy/xhtml

* It is impossible to reliably autodetect XHTML when sent as

text/html. This is why browsers could not ever treat text/html

documents as XML, even if they did not care about not being usable

(see the first point in this section).

+ You can't sniff for the five characters "<?xml" because:

- The <?xml ... ?> header is optional per Appendix C, and it is

recommended not to include it as it causes IE6 to trigger

quirks mode.

- SGML can also contain PIs (see the example below). (A "PI" is

a "processing instruction", a syntactic construct that begins

with the two characters "<?".)

+ You can't trigger from the DOCTYPE since the W3C might introduce

new XHTML DOCTYPEs in future, so you don't know which DOCTYPEs

to look for. (Not to mention that DOCTYPEs are optional for

well-formed XHTML documents, DOCTYPE parsing is hard, DOCTYPEs

may be hidden in comments, and DOCTYPE sniffing has been called

harmful by many leading figures at the W3C and elsewhere.)

+ You can't trigger off the "<html xmlns" string because it might

be there but hidden in a comment (you'd need a complete XML

parser to step past comments, PIs, internal subsets, etc).

e.g. what language is this text/html document in?:

<?xml this is not?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN"

[ <!-- SYSTEM "not XHTML" --> ]>

<!-- -- -->

This is a comment. This document is not XHTML.

<html xmlns="https://www.w3.org/1999/xhtml"/>

Ok, I'm done now. -->

<html>

<title> Need a title in HTML4! </title>

<p> This is a valid HTML4 document.

</html>

* Even if you could detect XHTML, what do you do with a document that

is not well formed (such as the example above)? If you fall back on

HTML4, then there is no advantage to using an XML processor, and you

might as well always treat it as HTML4.

* The HTML working group said that browsers should not do this:

https://lists.w3.org/Archives/Public/www-ht...00Sep/0024.html

Odnośnik do komentarza
Udostępnij na innych stronach

przebudowywujac strone tracisz pozycje, znam kilka takich przykladow, takze i swoj :)
- racja. Mi po przebudowie i optymalizacji kodu (XHTML nie ma z tym nic wspólnego, to samo można zrobić w HTML - chodzi po prostu o semantykę i lepszą relację kodu do treści) stronę na jakiś czas (2-3 miechy) wywaliło do wyników uzupełniających, google przestał indeksować podstrony. Na szczęście po tym czasie google ruszył jak burza indeksując podstrony w imponującym tempie a sama strona umocniła się.

Moim zdaniem każdy ruch powinien być obliczony na jakieś 3 miechy.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności