W3C home > Mailing lists > Public > www-style@w3.org > July 2002

Re: a:hover and a:active and named anchors

From: Coises <Randy@Coises.com>
Date: Tue, 30 Jul 2002 14:20:59 -0700
To: www-style@w3.org
Message-ID: <qisdkugf6p7k8mivohfgro33j84smlfcgs@4ax.com>

[Tue, 30 Jul 2002 15:01:16 -0400] Stuart Ballard:
>Unfortunately I don't *have* a proposal that I consider "good" (see my 
>other replies in this thread for lamentations on this issue and why a 
>good solution is so hard to produce).

Introduce a new property:

     Name: dynamic
     Value: none | all | [not]? [<dpc-name>]+
     Initial: all
     Applies to: all elements 
     Inherited: no 
     Media: interactive media

     none:                No dynamic pseudo-classes are to be recognized.
     all:                 All applicable dynamic pseudo-classes are
                          to be recognized.
     [not] [<dpc-name>]+: A list of one or more dynamic pseudo-classes to
                          be recognized or (if "not" is used) to be
                          excluded from recognition.

which makes it possible to disable dynamic pseudo-classes for an element;
then the problem can be solved by including this rule:
     a[name]  {dynamic: not hover}
in the user agent default style sheet for HTML and XHTML.

(I believe most current browsers behave as if they had the rules:
     *       {dynamic: none}
     a[href] {dynamic: all}
in their user agent default style sheets, but --- of course --- don't
recognize the "dynamic" property in user and author style sheets.)

An author would then have to add an additional rule, like this:
     a[name]  {dynamic: hover}
to make this:
     a[name]:hover  {...}
work in new, conforming browsers; but since:

     1. current authors don't expect a[name]:hover to work;

     2. "name" is already deprecated in XHTML 1.0, so authors should be
        following the practice Tantek Celik suggested in message
||           So, really what you _should_ do is stop using named anchors,
||           and use the "id" attribute instead directly on the target
||           element (i.e. don't use an unnecessary <a> element at all
||           for the destination of a hyperlink), which is much better
||           structurally than those empty named anchors that litter the web.
        when writing documents using newer standards (as CSS3 will be);

this doesn't seem to me like it would be much of a problem.  Page authors
*should* expect to have to allow for user agent default style sheets when
writing CSS --- particularly complex or unusual CSS.
Randall Joseph Fellmy aka Randy@Coises.com
Received on Tuesday, 30 July 2002 17:21:30 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:27:02 UTC