- From: Bert Bos <bert@w3.org>
- Date: Wed, 26 Oct 2005 00:50:31 +0200
- To: www-style@w3.org
On Tue, Oct 25, 2005 at 05:28:17PM -0400, Matthew Raymond wrote: > > Ian Hickson wrote: > > On Tue, 25 Oct 2005, David Hyatt wrote: > > > >>Another (IMO simpler) idea would be to just have label match the same > >>pseudo-classes that the control does, i.e., if a checkbox is :checked, > >>then the label can match :checked too. Same for :disabled, :enabled, > >>:indeterminate, and :focus. I don't see any reason to introduce new > >>selectors to solve this problem. > > > > > > That doesn't address all of Matthew's requests, and would be specific to > > <label>, not addressing similar problems with elements such as <map>, etc. > > But I agree that it might make sense too. > > Another problem with David's idea is that it fails to address styling > based on attribute values rather than selectors. An example would be > specific labels for specific <input> types in HTML: > > | label:friend(for, input[type=datetime]) > > Then there's the associations to elements with specific classes or IDs: > > | label:friend(for, .myClass) > | label:friend(for, #myID) > > Also, David's idea is misleading in some cases. As <label> has been > redefined in Web Forms 2.0, a label may not be able to have focus, for > instance. (Then again, it may be that we don't what this kind of styling > anyways, considering UI conventions. Yet, there again, if > non-conventional UI behavior is implemented, you'd significantly > complicate the method of styling that way.) Another idea: two new connectors. E -> F Matches all elements F that are pointed to by an element E, by means of an IDREF or URL. For example: LABEL:hover -> INPUT {background: yellow} matches the INPUT element if the LABEL is hovered over: <INPUT ID=a...>... <LABEL FOR=a>Label</LABEL> E <- F Matches all elements F that point to an element E, by means of an IDREF or URL. For example: INPUT:hover <- LABEL {background: yellow} matches the LABEL element if the INPUT element is hovered over: <INPUT ID=a...>... <LABEL FOR=a>Label</LABEL> I haven't thought about it for more than 5 minutes, so I'm sure there are lots of problems. But at least in 5 minutes I discovered fewer problems with such connectors than with pseudo-elements or pseudo-classes. OK, easy to use it isn't. Maybe 'E #linkto F' and 'E #linkfrom F' are more readable? Bert -- Bert Bos ( W 3 C ) http://www.w3.org/ http://www.w3.org/people/bos W3C/ERCIM bert@w3.org 2004 Rt des Lucioles / BP 93 +33 (0)4 92 38 76 92 06902 Sophia Antipolis Cedex, France
Received on Tuesday, 25 October 2005 22:50:38 UTC