- From: Stuart Ballard <sballard@netreach.com>
- Date: Tue, 30 Jul 2002 14:03:21 -0400
- To: Ian Hickson <ian@hixie.ch>
- CC: Jerry Baker <jerrybaker@attbi.com>, www-style@w3.org
Ian Hickson wrote: > > Jerry Baker wrote: > >> Ian Hickson says: >> >>> 3) Simply say: >>> :link:hover, :visited:hover >> >> And this works in all browsers that a:hover works in? > > > Yes. Did you read the reference I gave?: IMHO, the problem Jerry originally identified isn't so much that there's no way to get the desired behavior in standards-compliant browsers, or even to get the desired behavior cross-browser. It's that historically and even today, web authors are making an exceptionally poor showing of actually *doing* things that way. This suggests that either browsers are going to have to use "quirks" mechanisms once again to ensure that a:hover works in the wrong-but-expected way on existing pages, or that CSS needs to provide a way to support this "wrong" behavior officially *without* the web author having to do the right thing. In general, it seems to be easy to advocate to developers if you can provide a simpler way to do what they're already doing, that works without any major drawbacks, but it seems to be exceptionally hard to advocate a 'better way' that involves more complexity for them, even if it demonstrably *is* better. We're asking developers to go from the familiar: a:hover { ... } To: :link:hover, :visited:hover { ... } The latter selector is nearly three times as long and has five (!) times as much punctuation. It also has considerably less mnemonic value (the first half is good - "'link' refers to links, great" - but then it throws it all away - "isn't something that's 'visited' still a link? I already specified links!"). Do you really expect to be able to successfully advocate this in time for there to be essentially no pages out there doing it wrong when browsers come out that do the right thing? Or are you resigned to using quirks modes for yet another generation of browsers? If CSS could be done all over again, I'd suggest that :link should apply to both visited and unvisited links, and :visited should have a corresponding :unvisited pseudo that would match specifically unvisited links. Then again, I'd also use my time machine to redo HTML so that <a name> wasn't the same element as <a href> and this whole thing would be moot. Unfortunately, as they say, you "can't get there from here"... Stuart. -- Stuart Ballard, Programmer NetReach - Internet Solutions (215) 283-2300, ext. 126 http://www.netreach.com/
Received on Tuesday, 30 July 2002 14:03:30 UTC