This site will have limited functionality while we undergo maintenance to improve your experience. If an article doesn't solve your issue and you want to ask a question, we have our support community waiting to help you at @FirefoxSupport on Twitter and/r/firefox on Reddit.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Does userChrome.css really require the @namespace url... line?

more options

RE: @namespace url("https://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* only needed once */

I edited some of the appearance of Thunderbird by creating a userChrome.css file. Since I couldn't find a clear explanation of why the above referenced line needed to be included, I left it out, to no apparent ill-effect.

Now I'm wanting to customize the Bookmarks menu in Firefox, and I run into the same advice to include it, so I'm curious enough to want to find out if it's truly necessary or just some programmer's cute obsession with Ghost Busters.

RE: @namespace url("https://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* only needed once */ I edited some of the appearance of Thunderbird by creating a userChrome.css file. Since I couldn't find a clear explanation of why the above referenced line needed to be included, I left it out, to no apparent ill-effect. Now I'm wanting to customize the Bookmarks menu in Firefox, and I run into the same advice to include it, so I'm curious enough to want to find out if it's truly necessary or just some programmer's cute obsession with Ghost Busters.

All Replies (3)

more options

Yes, you need this line to avoid possible namespace issues and for safety reasons.

more options

Does this rule still apply when using Firefox 57? If so, what is the correct form to use since (presumably) XUL no longer applies?

Modified by ender21

more options

Firefox's interface is a mix of XUL elements and HTML elements. When you use ONLY the XUL namespace, your userChrome.css file cannot style the HTML elements.

That's mostly fine, but occasionally it's an issue. Since I got stung by it once, I no longer use a namespace. If you are worried about your rules bleeding over into areas you hadn't intended to style, there are other workarounds. I have brief discussion of this issue here: https://www.userchrome.org/adding-style-recipes-userchrome-css.html#namespaces