Welche von xul auf xhtml ?

  • Die Aussage von Sören aus Beitrag #3 kann ich so nicht stehen lassen.

    CSS
    /*AGENT SHEET*/
    /* Lesezeichensymbolleiste ohne Text */
    
    @namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);
    @-moz-document url(chrome://browser/content/browser.xhtml){
    
    #PlacesToolbarItems > toolbarbutton.bookmark-item > .toolbarbutton-text {
    display: none !important;
    }
    }

    Wenn ich die Zeile @namespace von "xul" in "xhtml" ändere, funktioniert der Code nicht.

    Freundliche Grüße
    Barbara

    ____________

  • Ich schrieb ja nicht grundlos Dateipfade. Die Namespace-Zeile beinhaltet eine externe URL, keinen Pfad einer lokalen Firefox-Ressource. ;)

    Würde man die Namespace-Zeile auf XHTML ändern wollen, müsste man diese in https://www.w3.org/1999/xhtml/ ändern, also etwas völlig anderes. Denn das ist der XHTML-Namespace. Da das aber der Standard-Namensraum ist, hätte das die gleiche Bedeutung, wie diesen komplett wegzulassen.

    Eine allgemeine Erklärung dazu, was ein Namensraum ist, kann auf Wikipedia nachgelesen werden:

    https://de.wikipedia.org/wiki/Namensraum_(XML)

    XHTML und XUL sind beides XML-Dialekte, das ist daher der passende Artikel.

    Die ersten zwei kurzen Absätze genügen. Der Rest sind technische Details, welche für die Frage nicht wichtig sind.

    Es ist so, dass zwischen (X)HTML und XUL Unterschiede gibt und sich eine ansonsten identische CSS-Regel im (X)HTML- und XUL-Kontext jeweils unterschiedlich auswirken kann. Deswegen muss klar sein, welcher Namensraum angesprochen wird.

    Gibt es keine Namespace-Deklaration, dann ist es wie gesagt automatisch der XHTML-Namensraum.

    Beispiel:

    CSS
    label {
        /* … */
    }

    Diese Regel befindet sich im XUL-Namespace, wenn die entsprechende XUL-Namespace-Zeile vorhanden ist, ansonsten im XHTML-Namespace, wenn der XHTML- oder keine Namespace-Deklaration angegeben ist.

    Man könnte auch in einem CSS-Dokument, welches sich ansonsten im XHTML-Namespace befindet, eine einzelne Regel im XUL-Namespace ansprechen, das würde dann so aussehen:

    CSS
    xul|label {
        /* … */
    }

    … um ein reales Beispiel zu nennen, wie es im Firefox-Quellcode mehrfach vorkommt:

    https://searchfox.org/mozilla-central/search?q=xul%7C&path=

  • In diversen Userskripten taucht das hier auf (fiel mir gerade bei der Umstellung auf):

    JavaScript
    var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');

    Die Skripte funktionieren, aber auch dort müsste wohl irgendwann https://www.w3.org/1999/xhtml/ eingetragen werden?

  • In diversen Userskripten taucht das hier auf (fiel mir gerade bei der Umstellung auf):

    Die Skripte funktionieren, aber auch dort müsste wohl irgendwann https://www.w3.org/1999/xhtml/ eingetragen werden?

    toolbarbutton ist ein XUL-Element.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress