- From: Smylers <Smylers@stripey.com>
- Date: Wed, 11 Feb 2009 13:36:45 +0000
Aryeh Gregor writes: > On Tue, Feb 10, 2009 at 10:30 PM, Ian Hickson <ian at hixie.ch> wrote: > > > > If the UA suddenly displays hyperlinks in green and I decided that > > > my background is green, the user will complain with me, not with > > > the UA (and will probably switch to a different website) > > > > Authors should never the background colour without setting the > > foreground colour. So that would be the author's fault. > > I don't think that's relevant. It is relevant, because as you then say: > If I, as an author, use the rule > > body { color: white; background: green; } > > and the UA uses the rule > > :link { color: green; } > > then links would be invisible despite my background color. That is precisely an instance of an author setting a background colour without a foreground colour -- specifically the author set the background colour used on links without setting the foreground colour for links. If an author sets a background colour then she needs to set the foreground colour for all text that appears on it, anywhere. > Although authors are encouraged to always set colors and backgrounds > together, UAs conventionally do *not* do this for links, for fairly > good reason. Browsers do of course (typically) set both together -- in that they provide a default background colour, plus foreground colours for visited links, unvisitied links, and non-link text. If an author overrides one of those four then he generally needs to override all of them (except in circumstances where he knows the area in question won't have any links, or any-non links, or any text). > You could say that not only should authors never set the background > color without setting the foreground color, they should also never set > the background color without setting the *link* color. Yup. > But this still doesn't help if the UA (or a user stylesheet) uses > > span { color: green; } > > for some strange reason Indeed. That would be strange. So strange that I really don't see why HTML 5 should be concerned with it, and I certainly don't think there's anything it can do about it: * A user-agent that does something as arbitrary as the above is unlikely to achieve much market share. * A user style-sheet that does the above has been presumably set by a user who wants it. Let her. > (not much stranger than green links by default!), It's significantly stranger, for a couple of reasons: * Links are a distinct type of element with a specific purpose. <span>-s convey no semantics of their own, and are used for multiple purposes. * Links are conventionally a different colour from other text; <span>-s aren't. Prefering links to be green rather than blue is a minor change, possibly one of aesthetics or to assist somebody who has trouble distinguishing certain colours. Whereas prefering <span>-s to be green rather than indistinguishable from the surrounding text is adding in a distinction not normally seen. > in which case everything is still messed up. Yes. Users can choose to implement custom styles which mess things up. Users are free to do that if they want. They may even have good reasons for doing so; for example, when attempting to debug a website it can be useful to make various elements different colours to show which is rendered where. It's possible that at some point I want to debug your website, or examine how you achieved a particular effect, and that making your <span>-s green will assist me in doing that. > I don't think there's any way around this. We don't want a way "round" it. It's a feature that users are in ultimate control. Smylers
Received on Wednesday, 11 February 2009 05:36:45 UTC