HTML and CSS Reference
• Enquiry Draft (DIS, FCD, FPDAmd, DAmd (DAM), FPDISP, DTR, DTS)
• Final Draft International Standard (FDIS, FDAmd (FDAM), PRF, PRF
• International Standard (ISO TR, TS, IWA, Amd, Cor)
Many web standards are open standards , meaning that the development has been open to individual
contributors; they are publicly available, and certain copyright licenses might apply.
The Variety of Rendering Engines
Web documents and files associated with style sheet files, script files, images, and XML files are processed and
displayed (that is, rendered) or printed by rendering engines ( layout engines ). They are usually embedded in web
browsers and e-mail clients.
Although the statistics of web browser market share [57, 58, 59, 60, and so on] are usually biased and inaccurate,
one thing is certain: no user agent can be claimed as “the most popular” or the “most widely used” one, because usage
share varies across application areas (mobile browsing, business setting, etc.). Consequently, browser independence
is a fundamental need in web design that ensures interoperability and functionality.
In the early 2010s web browsers reached a really high level of web standards support, and it is now the web
designers' turn to develop standard-compliant sites that leverage this standard support. To design web sites that
achieve a similar (and not pixel-by-pixel identical) appearance in various browsers has always been a challenge (and
often nightmare) for web designers. While the implementation of core web standards eventually became adequate
in modern browsers, there are specifications under development (such as many CSS3 modules) that are already
implemented partially and/or incorrectly in browsers. Due to this inconsistency and the different functioning and
features, various browsers might render even standard-compliant web sites differently. For years, various tricks and
hacks were used to address the problem which lost their relevance thank to best practices, but such tricks and hacks
are still present in older web sites.
SVG support can serve as a good example for the limited implementation and slow adoption of web standards.
The specification was published in 1999, and no one cared about it until the growing popularity of HTML5, which
natively supports the format. Browsers such as Firefox, Chrome, Opera, or Safari have adopted the standard lately,
although before IE, which is quite disappointing because none of them supported SVG for so many years. In the
early 2000s, one (if not the only one) that did was Amaya. Until recently, many people used the Adobe SVG Viewer
plug-in to display SVG images in their browsers, and most users could not open SVG files at all.
The implementation of elements and attributes does not necessarily mean proper, full support for a markup
language. For example, some browser vendors claimed for years that their product supported MathML; however,
MathML could not be rendered in many cases because of the lack of support for embedding mechanisms and external
files. Even the appropriate MIME type was missing from most implementations.
Standards support, especially of CSS, has been incorrect and/or incomplete in most browsers for years.
Moreover, the latest version of CSS, CSS3, was introduced before the previous one, CSS 2.1, could have gained
complete support in browsers.
There's always been web designers who preferred one of the browsers over the others, and users who hated one
or more of the major browsers, especially Internet Explorer. 6 For years, the third-party competitors of IE have been
implementing the latest technologies right after their release (Figure 1-1 ). Since 2012, Internet Explorer keeps up with
such changes through periodic updates, but previously it was lagging behind the other browsers due to rare updates
and the slow release of new major versions (three years have passed between version 7 and 8, two years between
version 8 and 9, compared to Firefox's rapid release at six-week intervals since version 5).
6 As the built-in browser of Windows, it is more vulnerable than third-party browsers, and older versions of Windows do not support
the latest versions of IE, while the latest version of third-party browsers can be installed even on really old systems. Third-party
browsers have other limitations and issues. Google Chrome, for example, has well-known privacy issues.