2009-10-19 26 views
5

Mam dokument XHTML i chcę osadzić widżety XUL w dokumencie. Jaka jest prawidłowa składnia XML, aby to zrobić?Jak wstawić XUL do dokumentu 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> 

Odpowiedz

10

dodać xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" do tagu <html>.

następnie użyj <xul:element>, np. <xul:vbox>

Edit

<!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> 

Również zakładam, to nie jest taka prosta sprawa ... inaczej nie byłoby sensu owijanie XUL w html (chociaż na odwrót zdarza czasami)

Edit

kilka dodatkowych punktów, aby pamiętać, gdy w ten sposób:

  1. musi być obsługiwany z poprawnym typem xml. na przykład application/xml lub text/xml - not text/html. (See https://bugzilla.mozilla.org/show_bug.cgi?id=101147#c12 - cały wątek jest wart odczytu)
  2. musi być poprawny xml. Pewien stopień niechlujstwo jest tolerowany przez przeglądarki podczas parsowania HTML (niezamknięte tagi, etc.) i to nie jest przypadek, że na dokumencie zawierającym XUL (nawet części html dokumentu)

(dzięki Nikolay dla pierwszy punkt)

+0

Jest to poprawne, chociaż działa to tylko w "prawdziwym" formacie XML (tj. obsługiwanym z typem treści XML, a nie tekstem/html) i istnieje wiele znanych problemów, gdy coś nie działa poprawnie, kiedy osadzanie elementów XUL w dokumentach innych niż XUL. – Nickolay

+0

To prawda, Nickolay. Między innymi dotyczy to dość ograniczonego podzbioru przeglądarek. Dodam twoje punkty do odpowiedzi. Dobrze mieć tutaj swoją wiedzę. –

+0

Wyjaśnienie: moja ostatnia uwaga dotyczyła Mozilli. Elementy XUL zwykle nie są używane poza dokumentami XUL w Firefoksie, więc te zastosowania są przeważnie nieprzetestowane i są błędy z XUL w dokumentach innych niż XUL, np .: https://bugzilla.mozilla.org/show_bug.cgi?id=101147# c12 – Nickolay