HTML kontra XHTML
XHTML to bardziej rygorystyczna, bardziej oparta na XML wersja HTML.
Co to jest XHTML?
- XHTML to skrót od E X tensible Hypertext Markup Language _
- XHTML to bardziej rygorystyczna, bardziej oparta na XML wersja HTML
- XHTML to HTML zdefiniowany jako aplikacja XML
- XHTML jest obsługiwany przez wszystkie główne przeglądarki
Dlaczego XHTML?
XML to język znaczników, w którym wszystkie dokumenty muszą być poprawnie oznaczone (być „dobrze sformułowane”).
XHTML został opracowany, aby uczynić HTML bardziej rozszerzalnym i elastycznym do pracy z innymi formatami danych (takimi jak XML). Ponadto przeglądarki ignorują błędy na stronach HTML i starają się wyświetlić witrynę, nawet jeśli zawiera ona błędy w znacznikach. Tak więc XHTML ma znacznie bardziej rygorystyczną obsługę błędów.
Jeśli chcesz uczyć się języka XML, przeczytaj nasz samouczek XML .
Najważniejsze różnice w stosunku do HTML
- <!DOCTYPE> jest obowiązkowy
- Atrybut xmlns w <html> jest obowiązkowy
- <html>, <head>, <title> i <body> są obowiązkowe
- Elementy muszą być zawsze odpowiednio zagnieżdżone
- Elementy muszą być zawsze zamknięte
- Elementy muszą być zawsze pisane małymi literami
- Nazwy atrybutów muszą być zawsze pisane małymi literami
- Wartości atrybutów muszą być zawsze cytowane
- Minimalizacja atrybutów jest zabroniona
XHTML - <!DOCTYPE ....> jest obowiązkowy
Dokument XHTML musi mieć deklarację XHTML <!DOCTYPE>.
Elementy <html>, <head>, <title> i <body> również muszą być obecne, a atrybut xmlns w <html> musi określać przestrzeń nazw xml dla dokumentu.
Przykład
Oto dokument XHTML z minimalną liczbą wymaganych tagów:
<!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>Title of document</title>
</head>
<body>
some content here...
</body>
</html>
Elementy XHTML muszą być prawidłowo zagnieżdżone
W XHTML elementy muszą być zawsze odpowiednio zagnieżdżone w sobie, na przykład:
Prawidłowy:
<b><i>Some
text</i></b>
Zło:
<b><i>Some
text</b></i>
Elementy XHTML muszą być zawsze zamknięte
W XHTML elementy muszą być zawsze zamknięte, na przykład tak:
Prawidłowy:
<p>This is a paragraph</p>
<p>This is another paragraph</p>
Zło:
<p>This is a paragraph
<p>This is another paragraph
Puste elementy XHTML muszą być zawsze zamknięte
W XHTML puste elementy muszą być zawsze zamknięte, tak jak to:
Prawidłowy:
A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />
Zło:
A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">
Elementy XHTML muszą być pisane małymi literami
W XHTML nazwy elementów muszą być zawsze pisane małymi literami, na przykład:
Prawidłowy:
<body>
<p>This is a paragraph</p>
</body>
Zło:
<BODY>
<P>This is a paragraph</P>
</BODY>
Nazwy atrybutów XHTML muszą być pisane małymi literami
W XHTML nazwy atrybutów muszą być zawsze pisane małymi literami, na przykład:
Prawidłowy:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Zło:
<a HREF="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Wartości atrybutów XHTML muszą być cytowane
W XHTML wartości atrybutów muszą być zawsze cytowane, w następujący sposób:
Prawidłowy:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Zło:
<a href=https://www.w3schools.com/html/>Visit our HTML tutorial</a>
Minimalizacja atrybutów XHTML jest zabroniona
W XHTML minimalizacja atrybutów jest zabroniona:
Prawidłowy:
<input type="checkbox" name="vehicle" value="car" checked="checked" />
<input type="text" name="lastname" disabled="disabled" />
Zło:
<input type="checkbox" name="vehicle" value="car" checked />
<input type="text" name="lastname" disabled />