Browser support—Definitions

On this page:

A

Addressability

The ability to request a resource via a unique URL.

Note: addressability does not imply access. Authentication may be required for access, but this does not alter addressability.

Application

The context of 'an application' within the Consistent User Experience (CUE) standard is defined as an externally facing or internally facing web based service.

Web-enabled software application that is targeted at human users. Web applications are presented to a user over the Internet and are accessed through a browser.

AJAX

Using JavaScript to request data from the web server or send data without reloading or navigating to another page (asynchronous requests).

B

Behaviour layer

Otherwise known as the scripting layer. This is where scripting, such as JavaScript is used to add function and behaviour to webpages.

Browser

Software used for viewing web content. This term is used broadly within this document and should be considered synonymous with user agent.

C

Client-side

Client-side describes any activities performed on a user's computer. In terms of web applications, this refers to activities performed in the user's browser.

Client-side scripting

Client-side scripting languages (like JavaScript) can be used to perform calculations, page manipulations or other behaviours in the user's browser (as opposed to on the server).

Code

In the context of this document, 'code' refers to client-side markup, style and scripting code (for example: HTML, XHTML, XML, CSS and/or JavaScript).

Consistent User Experience (CUE)

Queensland Government Consistent User Experience Standard and template.

Content layer

Web content is the textual, visual or aural content that is encountered as part of the user experience on websites. It may include, among other things: text, images, sounds, videos and animations.

Content block

A logical grouping of page content. Some examples of content blocks in an application are form instructions, error message summary, a set of form fields and form actions (buttons and links).

D

DHTML

Dynamic HTML. Using client-side scripting to update or add content to a page (usually via DOM Manipulation) or move/animate existing elements of the page. DHTML techniques are considered to be part of the behaviour layer.

DOM

Document Object Model. An Object-oriented model of a webpage based on a hierarchical tree of DOM nodes. Each DOM node represents an element (tag or text) of the page.

DOM manipulation

Also known as DOM Scripting. Using client-side scripting to add, update or delete nodes from the DOM of a webpage. The results of DOM manipulation are immediately noticeable to users of the webpage as content is either added, updated or removed.

See also: DHTML.

F

Forwards compatibility

Developing according to published standards and best practice in order to mitigate the risk of incompatibility with future browser/platform releases.

Full support

A grade of support delivering the most comprehensive user experience (across presentation and behaviour layers) extended to the most frequently used browsers.

See also: Reduced support.

H

Hijax

The unobtrusive use of JavaScript to hijack a functional webpage or web form to enhance the user experience via Ajax and/or DHTML.

HTTP

HyperText Transfer Protocol. A cross-platform open standard communication protocol used to send and receive information on the internet between web browsers and web servers.

J

JavaScript

The most common and universally supported client-side scripting language.

JavaScript library

Libraries implement features not found, or not consistently implemented in browsers. Generally libraries have already undergone rigorous browser testing (while in development and when deployed in the marketplace). They workaround many cross-browser compatibility issues, taking this pressure away from developers who use the library.

Example: jQuery.

L

Like

The word 'like' has been used in this document to indicate that presentation should appear very similar–and functionality should behave similarly–between browsers without needing to be identical.

M

Main layout elements

'Layout' refers to how the elements of a webpage are positioned on the screen. The 'main layout elements' are the major elements that are consistent between most pages on a website.

For example: header, tools menu area, primary navigation area, secondary navigation area, main content area, feature content area and footer.

Markup

Usually refers to HTML, XHTML or XML code (tags), and therefore represents the code used in the content layer. Any language that is used to add semantics to plain text can be considered markup.

O

Operable

Functionality of websites and web applications must be able to be operated by users of different abilities, using different browsers, devices or different methods of accessing content (example: assistive technologies).

See the Web Content Accessibility Guidelines 2.0 for guidelines aimed at making functionality operable.

P

Perceivable

Content must be able to be perceived by users of different abilities, using different browsers, devices or different methods of accessing content (example: assistive technologies).

See the Web Content Accessibility Guidelines 2.0 for guidelines aimed at making content perceivable.

Platform

In this document 'platform' refers to the combination of device (hardware), firmware and/or operating system used to run browser software when accessing web content.

For example: Some different devices include mobile devices, PDAs, Internet phones, small form-factor laptops and tablet PCs. Some different operating systems include Mac OS X, Linux, Windows, iOS, Android, PalmOS and/or Symbian.

Presentation layer

The presentation layer is responsible for the delivery and formatting of information. This is where stylesheets (CSS) are used to add visual design elements to webpages, such as fonts, background images, and positioning of content blocks and images.

Progressive enhancement

Best practice in web development using web technologies in a layered fashion that allows all users to access the basic content and functionality of a web resource, using any browser, while providing an enhanced experience for users with more capable browsers.

R

Reduced support

A grade of support extended to browsers with serious bugs that maintain statistically significant usage. Basic content and functionality are supported, but enhanced features may be disabled in order to avoid bugs and/or prohibitive development costs.

See also: Full support, progressive enhancement.

Rendering engine

The part of a browser that takes content and presentation layer code and renders the final appearance of a webpage to the screen. Some browsers share a common rendering engine and therefore resources appear similar in both/all. This can also lead to bugs that are shared between different browsers.

Resource

HTTP resource. A file or a defined output of an application/database that can be served via HTTP to a user agent. Each unique resource should have at least one unique URL. This ensures the addressability of the resource.

Robust

Content must be able to be accessed using different browsers, devices or different methods of accessing content (example: assistive technologies). This document outlines best practice techniques for creating robust web resources.

See the Web Content Accessibility Guidelines 2.0 for guidelines aimed at making content robust.

S

Semantics

A 'meaning' that is clear to humans. Markup languages are used to add meaning to plain text. Semantic use of markup ensures the meaning is also clear to humans reading the code. Semantic markup promotes code accessibility, re-use and ease of maintenance.

Serious bug

Unexpected and non-standard browser behaviour that deviates from documented web standards and reduces or prevents access to the content layer. Serious bugs are used as justification to add browsers to the reduced support list.

Statistically prevalent

A browser is statistically prevalent if it represents a large percentage of total visits (based on aggregated agency usage statistics). Around 10% could be considered a rough guide, but the threshold should be refined over time.

Statistically significant

A browser is statistically significant if it represents a significant use by site visitors (based on aggregated agency usage statistics). At least 2% of total visits could be considered a rough threshold, but should be refined over time.

Stylesheets

Usually refers to CSS, and sometimes XSL code. Presentation layer code that controls the appearance of the content layer.

T

Template

In this document 'template' refers to any method that stores page elements occurring on most pages of a website in a central location so the elements can be shared by those pages.

Using templates can reduce the chance that inconsistencies in main layout elements will develop between pages.

For example: XSL templates, DreamWeaver templates, server side includes, content management system templates.

U

Unobtrusive scripting

Using client-side scripts unobtrusively means:

  1. That behaviour layer code is kept separate from content layer markup;
  2. That page elements that require scripting to function are not present in the content layer initially, rather they are added on page load; and
  3. That the content layer is functional by itself, the scripting only enhances the experience.

See also Hijax.

Unspecified support

A 'catch all' grade of support extended to all browsers that are not specifically identified on the full support or reduced support lists.

URL

Universal Resource Locator. A string of characters used to locate a resource available via the Internet.

User agent

Software used to access web resources. This may be browser software (for end users) or automated software agent that works on behalf of a person or organisation.

Example: a search engine indexing robot.

Users

A broad category of people that use Queensland Government websites, including the general public, partner organisations and agency staff.

V

Validation

Validation is the process of ensuring code of a specific language, conforms to the specification for the language. Verification to common practical conventions (above and beyond validation) should also be considered to ensure maximum cross-browser compatibility (e.g. code checking or 'linting' JavaScript).

W

Web application

See: Application