2009-10-19 9 views
5

J'ai un document XHTML et je souhaite intégrer des widgets XUL dans le document. Quelle est la syntaxe XML correcte pour le faire?Comment insérer XUL dans un document XHTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
</head> 
    <body>  
    insert XUL here 
    </body> 
</html> 

Répondre

10

ajouter xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" à votre balise <html>.

puis d'utiliser <xul:element>, par ex. <xul:vbox>

Modifier

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 
     xml:lang="en" lang="en"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
</head> 
    <body>  
    <xul:vbox> 
    </xul:vbox> 
    </body> 
</html> 

, je suppose aussi ce n'est pas un cas aussi simple ... sinon il n'y aurait pas beaucoup d'intérêt à envelopper le XUL en html (bien que l'inverse arrive parfois)

Modifier

Quelques points à garder à l'esprit lors de cette opération:

  1. doit être servi avec un type xml valide. par exemple. application/xml ou text/xml - pas de texte/html. (See https://bugzilla.mozilla.org/show_bug.cgi?id=101147#c12 - le fil entier vaut la peine d'être lu)
  2. doit être valide xml. Un certain degré de négligence est tolérée par les navigateurs lors de l'analyse html (balises non fermées, etc.) et ce n'est pas le cas pour un document contenant XUL (même les parties html du document)

(grâce à Nikolay pour le premier point)

+0

Ceci est correct, bien que cela ne fonctionne que dans le "vrai" XML (c'est-à-dire avec un type de contenu XML, pas de texte/html) et il y a beaucoup de problèmes connus l'incorporation d'éléments XUL dans des documents non-XUL. – Nickolay

+0

True, Nickolay. Pas moins parmi eux que cela s'applique à un sous-ensemble assez limité de navigateurs. Je vais ajouter vos points à la réponse. C'est bon d'avoir votre expertise ici. –

+0

Clarification: mon dernier point était spécifique à Mozilla. Les éléments XUL ne sont généralement pas utilisés en dehors des documents XUL dans Firefox, donc ces utilisations sont pour la plupart non testées et il y a des bogues avec XUL dans des documents non-XUL, par exemple: https://bugzilla.mozilla.org/show_bug.cgi?id=101147# c12 – Nickolay

Questions connexes