More often than not, Web technology advancement is a result of competition among product vendors who release new capabilities as extensions or upgrades to their current offerings. This is especially true in the advancement of browser products.
Seeking a competitive advantage, competing browser vendors have offered extensions to HTML standards that are proprietary in nature but offer great advantages to the Web developer. These advantages have enticed Web developers to include the proprietary extensions within their pages.
But even when they're adhering to the W3C's recommendations, competing vendors often interpret standards differently. For example, HTML tables are displayed differently depending on the browser. The result is that developers are burdened with the time-consuming task of verifying site code on different browsers or, worse yet, incorporating browser-sniffing checks to target their scripts.
The W3C is well aware of this dichotomy and has attempted to incorporate some extensions into the HTML standards.
XHTML 1.0 is the W3C HTML working group's recommendation for the next version of HTML. The HTML working group's goal is the development of the next generation of HTML as a suite of XML tag sets with a clean migration path from HTML 4.0. A key benefit is its modular solution to the increasingly incongruent capabilities of current Web browsers.
XHTML 1.0 is the first major change to HTML since the acceptance of HTML 4.0 in 1997. It applies the stringent standards of XML to Web pages and reformulates HTML 4.01 as an XML document. XHTML uses tags found in HTML 4.0 and can be interpreted by existing browsers. A key goal of XHTML 1.0 is to separate document structure from presentation with the purpose of moving presentation to the W3C's CSS (Cascading Style Sheet) standard.
XHTML 1.0 Second Edition was published as a working draft on Oct. 4, 2001, and reflects corrections submitted to the HTML Working Group.
More than one to choose from
The HTML working group identifies three "flavors" of XHTML 1.0:
- XHTML 1.0 Strict: Strict conformance to XML; uses only CSS for layout
- XHTML 1.0 Transitional: Less strict compliance for earlier browsers; allows some layout attributes such as bgcolor on the BODY tag
- XHTML 1.0 Frameset: Used when you want to employ HTML frames
The HTML working group also published XHTML Basic, the second XHTML specification. It identifies a baseline, or a minimum set of modules required for a document to be considered XHTML. XHTML Basic includes image, form, table, and object support.
Modularization of XHTML is the third accepted recommendation by the W3C. It defines a means of implementing XHTML and XHTML extensions as XML Document Type Definitions (DTDs).
On May 31, 2001, the W3C published XHTML 1.1 Module-based XHTML as a recommendation. This standard provides the framework for future extension of the family of XHTML document types. XHTML 1.1 is a reformulation of XHTML 1.0 Strict using HTML modules.
Where to from here?
Specifications for event handling (XHTML Events) and form handling (XFORMS) are currently under development. For more information on the efforts of the W3C's HTML working group, check out the group's home page.
Next time, we'll look at the issues involved in converting current HTML documents to conform to XHTML 1.1.
Are different browsers giving you a headache?
How does your Web site deal with the different browser capabilities? What suggestions do you have for others wanting to produce a feature-rich Web site? Send us an e-mail with your experiences and suggestions or post a comment below.