wicher schreef op 30 september 2002 @ 00:04:
[...]
Hmm
In principe kun je aan XHTML eigen tags toevoegen. Het blijft dan wel geldige XML, maar geen officieel geldige HTML meer.
Aangezien de meeste browsers ongeldige tags echter gewoon zullen negeren is het in de praktijk inderdaad gewoon mogelijk, maar officieel ligt het m.i. iets genuanceerder.

sterker nog; ook als XML valideert dit niet meer, XHTML verwijst naar een eigen DTD waarin de tags en hun toegestane attributen in zijn aangegeven.
een niet-geldig attribuut erin verwerken zal je browser naar 'Quirky'-mode zetten, waarna de rendering van de pagina via oudere buggy regels verloopt, kan rottige effecten hebben op margins en paddings en exacte grootte van elementen, en veranderd een aantal zaken in het DOM
modulair XHTML1.1 is weer wel bedoeld om eigen XML-markup te kunnen includen; dit doe je door te verwijzen naar andere namespaces, hiervoor is behalve validatie per DTD
ook XML Schema eraan toegevoegd:
de opzet van een XHTML document wordt dan:
code:
1
2
3
4
5
6
7
8
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/2002/08/xhtml/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/1999/xhtml
http://www.w3.org/2002/08/xhtml/xhtml1-strict.xsd">
...
</html> |
de uitleg van XHTML modulair stat op:
http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410/
je kunt nu een eigen DTD maken en deze toevoegen aan de basis XHTML-DTD:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <!DOCTYPE html SYSTEM "simpleml-1_0.dtd" [
<!ENTITY % SimpleML.prefixed "INCLUDE">
]>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:simpleml="http://www.example.com/xmlns/simpleml1" >
<head>
<title>An example using defaults</title>
</head>
<body>
<p>This is content in the XHTML namespace</p>
<simpleml:element>
This is content in the SimpleML namespace.
<simpleml:otherelement />
</simpleml:element>
<p>[img]"missing"[/img]</p>
</body>
</html> |
Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen