NN 4, IE 4
You want to load separate external style sheet files for users on different kinds of computers.
<link> tags within the head portion of the page, branching according to
operating-system detection. The following example loads different style sheet
files for Mac users and all other users:
You can combine the browser- or operating system-specific external style
sheets with other fixed
<link> elements in the same
page, as well as other kinds of style sheet definitions or
@import rules (where supported). If your content observes the
strict version of XHTML, and you want dynamically generated code to also be in
that form, you can use the following
document.write("<link rel='stylesheet' type='text/css' href='" + cssFile + "' />");
To simplify the validation of your script under strict XHTML, you can move the CSS file loading statements to an external .js file.
Employing multiple style sheets for different browsers or operating systems imposes the same maintenance headaches as multiple page implementations for different browsers. Any change you make to the design needs to be adapted for each version and tested thoroughly on the designated platforms. And yet, some applications of CSS styles may create an imperative for separate style sheet rules for Internet Explorer for Windows versions that are not fully CSS-compatible (see Recipe 11.13).
Danny Goodman has been writing about technology and computers full-time since 1981 and is the author of Dynamic HTML: The Definitive Reference and "The Complete HyperCard Handbook."
Return to the Web Development DevCenter.
Copyright © 2009 O'Reilly Media, Inc.