- From: Lachlan Hunt <lachlan.hunt@iinet.net.au>
- Date: Sun, 02 May 2004 17:09:53 +1000
- To: Bjoern Hoehrmann <derhoermi@gmx.net>
- Cc: W3C Style List <www-style@w3.org>
Bjoern Hoehrmann wrote: > Indeed. What I would rather see than syntax proposals is a compilation > of desired properties of such a mechanism to derive requirements to both > design solutions and measure solutions. OK, so, basically, you want something to help begin the process of writing a requirements document for analysing what currently can, and can't be done, compared with what should be able to be done, and to determine which features would be most beneficial to the development and use of CSS in the long run. > As you point out, modular composition of a site style sheet is such a > property. Persistence is another, how to maintain the style sheet > selecion/composition throughout a site, how to override it for specific > parts of a site, how to maintain state across browser sessions, etc. <snip/> > Hence, what properties do we desire and how important are they? Yes, all of those ideas definitely are worth looking at, however for this post, I will focus on optional rules/alternate style sheets and some use cases where they could be useful. Based on your response, I'll focus less on the syntax, and more on the functional requirements. The importance and feasibility of each idea can be decided later. I assume it's well known how current UAs user style sheet implementations are basically limited to changing colours, backgrounds, and font sizes. IE does allow a single CSS file to be used as a user style sheet, and Mozilla can do so, using some of the available extensions. However, providing those few simple options, and being essentially limited to using either a single user style sheet or the supplied author style sheet(s), with very limited ability to mix 'n' match styles from various sources, isn't very useful. My concept of options is that different sections of a style sheet can be specified and applied either independently of, or (in some cases) dependent on other sections of a style sheet. The aim is to reduce the need to write a complete style sheet for every possible combination of styles that a user may wish to use. Also, if the UA presented the user with a easy to understand set of options, it would increase the use of user style sheets on the web. (Because, an option, whether it was provided with the UA, created by the user, or loaded as part of the author style sheet, should be treated as a user style sheet preference when activated. Thus, it reduces the need for the user to have knowledge of CSS, and it *should* (assuming IE won't throw in more proprietary properties) allow options to be shared freely among UAs, users and authors to work on virtually any document. The following points will list some of the requirements and ideas that I can think of. The examples included are extremely trivial, and are only there to show the concept, but not necessarily a real world use. 1. Optional styles can be specified by the author, a UA or the user and can be applied, at the user's preference. a. Some of these options should be able to be applied no matter which alternate style sheet has been selected. b. Some may only be applicable when one specific alternate style sheet is selected. c. Others may be applicable to a group of alternate styles, but not all. 2. User Agents should be able to remember the preferences set by the user for sites and/or browsing sessions. 3. Options should be seamlessly integrated into the user interface, regardless of whether they were provided by the author, UA or the user. 4. Options should be able to be grouped into categories. Some categories could have requirements on the number of selected options. a. Zero or One eg. Options: "Red" or "Blue" "Either Red, or Blue, but not both; or another, such as Green. b. Zero or more; eg. "Expanded Abbr.", "Show Hyperlink Uri’s" Both can be turned on or off independently of each other. c. Exactly one; or eg. Options: "Serif Font", "Sans-Serif Font", "Mono-Space Font" One and only one font-family can be selected at a time; d. One or more. (Can't think of an example, but you should understand) 5. Some options may only be applicable when other option(s) are selected eg. Can only select Arial, Helvetica or Verdana, when Sans-Serif is selected. a. This suggests, that maybe options could form a hierarchical, or maybe even a network structure, and be nested within, or somehow linked to other options. b. This is similar to point 1.b. Maybe options shouldn't be totally different from alternate style sheets, but rather an extension to them. 6. Options should be able to be specified by the author, UA, or user as being on or off by default. (eg. perhaps an 'active' and/or 'inactive' keyword(s), but that's syntax, so at this stage, it doesn't really matter) 7. Some options may apply to any number of media types. 8. Selected options may have slight variations depending on the selected alternate style sheet. 9. It may be useful for options to be importable from external style sheets. eg. If I have a Style sheet containing nothing but a collection of options, I should be able to import some, but not necessarily all options into one or more of my style sheets (without copying and pasting) 10. Options may be as simple as changing font, size and or colour properties, or as advanced as rearranging content (eg. moving the navbar, etc…). Thus, an option really is similar to an alternate style sheet, except that other options can also be applied with it. Now that I've actually, really thought about different uses of options and how they may be applied, it now seems that even the original syntax I proposed, may be too limited to meet all requirements and ideas I've suggested, though it could be a good start. -- Lachlan Hunt
Received on Sunday, 2 May 2004 03:10:36 UTC