XHTML striktně vyžaduje:
a. všechny atributy v uvozovkách
např.:
<table rows="3">
b. zákaz křížení značek
např.:
<b>dobrý<i>zápis</i></b>
<b>špatný<i>zápis</b></i>
Rozdíly:
a. značky a atributy jsou malými písmeny
b. nepárové značky končí lomítkem
např.: <br /> <hr />
c. párové značky jsou povinné
d. všechny atributy musejí mít hodnotu (i ty které v HTML hodnotu "nemají")
např.: checked="checked">
na začátku dokumentu musí být
1. XML deklarace
např:
<?xml version="1.0" encoding="iso-8859-2"?>
2. deklarace typu dokumentu
např.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
3. jiný způsob ošetření speciálních znaků použitých např ve skriptech
V HTML
<script type="text/javascript">
<!--
zápis javascriptu
-->
</script>
V XHTML
<script language="JavaScript">
<![CDATA[
zápis javascriptu
]]>
</script>
4. ještě drobnost
&
zapisujeme v XHTML
&
5. atributy id a name
XHTML upřednostňuje atribut id i když povoluje i name