XBL

Last updated

XBL (XML Binding Language) is an XML-based markup language for altering the behavior of XUL widgets. It was devised at Netscape in the late 1990s as an extension of XUL. [1] [2]

Contents

The primary use of XBL was in the Firefox web browser, but Mozilla deprecated it in 2017 and completely removed it from Firefox in 2019. [3] [4] However, the UXP fork of Firefox intends to continue supporting XBL indefinitely. [5]

Mozilla attempted to standardize XBL 2.0 via W3C in 2007, [6] but due to lack of interest from other web browser vendors, abandoned it in 2012. [7]

The Shadow DOM specification acknowledges XBL as a strong influence. [8]

Overview

XUL defines the user interface layout of an application. CSS rules can be used to change the appearance of various XUL elements. But XBL is needed to alter the behavior of a XUL widget, such as a scroll bar.

An XBL file contains bindings, each of which describes the behavior of a XUL widget. The root element of an XBL file is the <bindings> element, which contains one or more <binding> elements. Each <binding> element declares one binding, which can be attached to any XUL element. It may also possess an id attribute. A binding is assigned to an element by setting the CSS property -moz-binding to the URL of the binding's file. For example:

scrollbar{-moz-binding:url('somefile.xml#binding1');}

See also

Related Research Articles

Document Object Model Convention for representing and interacting with objects in HTML, XHTML and XML documents

The Document Object Model (DOM) is a cross-platform and language-independent interface that treats an XML or HTML document as a tree structure wherein each node is an object representing a part of the document. The DOM represents a document with a logical tree. Each branch of the tree ends in a node, and each node contains objects. DOM methods allow programmatic access to the tree; with them one can change the structure, style or content of a document. Nodes can have event handlers attached to them. Once an event is triggered, the event handlers get executed.

Scalable Vector Graphics Open standard for two-dimensional vector graphics

Scalable Vector Graphics (SVG) is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation. The SVG specification is an open standard developed by the World Wide Web Consortium (W3C) since 1999.

Gecko is a browser engine developed by Mozilla. It is used in the Firefox browser, the Thunderbird email client, and many other projects.

Cross Platform Component Object Model (XPCOM) is a cross-platform component model from Mozilla. It is similar to Microsoft Component Object Model (COM) and Common Object Request Broker Architecture (CORBA). It features multiple language bindings and interface description language (IDL) descriptions; thus programmers can plug their custom functions into the framework and connect it with other components.

XUL, which stands for XML User Interface Language, is a user interface markup language developed by Mozilla. XUL is an XML dialect for writing graphical user interfaces, enabling developers to write user interface elements in a manner similar to web pages.

Extensible Application Markup Language is a declarative XML-based language that Microsoft developed for initializing structured values and objects. It is available under Microsoft's Open Specification Promise.

Comparison of web browsers Wikimedia list article

The following tables compare general and technical information for a number of web browsers. For further references, a browser support matrix is a table of support of a Webpage by browsers.

Mozilla Firefox has features that allow it to be distinguished from other web browsers, such as Chrome and Internet Explorer.

A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.

This article compares Cascading Style Sheets (CSS) support for several browser engines.

DOM Inspector Web development tool

DOM Inspector (DOMi) is a web developer tool created by Joe Hewitt and was originally included in Mozilla Application Suite as well as versions of Mozilla Firefox prior to Firefox 3. It is now included in Firefox, and SeaMonkey. Its main purpose is to inspect and edit the Document Object Model (DOM) tree of HTML and XML-based documents.

The Mozilla application framework is a collection of cross-platform software components that make up the Mozilla applications. It was originally known as XPFE, an abbreviation of cross-platform front end. It was also known as XPToolkit. To avoid confusion, it is now referred to as the Mozilla application framework.

sXBL is a mechanism for defining the presentation and interactive behavior of elements described in a namespace other than SVG's. sXBL is very similar to XBL, as it does for SVG documents what XBL does for XUL documents. For example, it is possible to define a generic scrollArea in sXBL and use it in SVG documents.

A browser extension is a small software module for customizing a web browser. Browsers typically allow a variety of extensions, including user interface modifications, cookie management, ad blocking, and the custom scripting and styling of web pages.

Stylish User style manager

Stylish is a user style manager that can change the appearance of web pages in a user's browser without changing their content by including user-supplied CSS style sheets with those supplied by the web site itself. The Stylish browser extension includes tools with which to write user styles, and can install user styles written by other Stylish users from a companion website. These user styles may be more or less selective, targeting just one web page, or all of the pages on a domain, or every page on the web.

Firebug (software) Web development add-on for Firefox

Firebug is a discontinued free and open-source web browser extension for Mozilla Firefox that facilitated the live debugging, editing, and monitoring of any website's CSS, HTML, DOM, XHR, and JavaScript. It is now inbuilt in Firefox.

Firefox 3.5

Mozilla Firefox 3.5 is a version of the Firefox web browser released in June 2009, adding a variety of new features to Firefox. Version 3.5 was touted as being twice as fast as 3.0. It includes private browsing, has tear-off tabs, and uses the Gecko 1.9.1 engine. It was codenamed Shiretoko during development, and was initially numbered Firefox 3.1 before Mozilla developers decided to change the version to 3.5, to reflect the inclusion of a significantly greater scope of changes than were originally planned. It is the last major version to support X BitMap images.

Web Components are a set of features that provide a standard component model for the Web allowing for encapsulation and interoperability of individual HTML elements.

References

  1. Castro, Jorge O. (2004-06-15). "Ars Technica sits down with Scott Collins from Mozilla.org". Ars Technica . p. 2. Archived from the original on 2018-02-22. Retrieved 2018-11-28.
  2. "XBL 2.0 Acknowledgments". www.w3.org.
  3. "Design Review Packet - XBL Removal". mozilla.github.io. Mozilla. 2017-10-13. Retrieved 2018-04-15 via GitHub Pages.
  4. "XBL Graphs". bgrins.github.io. Retrieved 2019-10-16.
  5. "Pale Moon future roadmap". Pale Moon. Retrieved 2019-02-15.
  6. "W3C news archive: 2007".
  7. "XBL 2.0". www.w3.org.
  8. "Shadow DOM". wicg.github.io. Retrieved 2022-03-18.