- From: Scott E. Preece <preece@predator.urbana.mcd.mot.com>
- Date: Tue, 8 Oct 1996 08:36:25 -0500
- To: howcome@w3.org
- CC: www-style@w3.org
From: Hakon Lie <howcome@w3.org> | | > Also, the spec explicitly states that a simple selector can have only | > 1 class (in section 1.4), but I could find no such limit on the number of | > IDs per simple selector. | > | > Is that a purposeful omission (and simple selectors can have multiple | > IDs) or does the same limit apply to IDs (only 1 per simple selector)? | | The specific limitation for class values is there since the Cougar DTD | [1] suggests that the CLASS attribute value is a comma-separeated list | of values. CSS1 does not support this, and that's why we needed a | specific limitation. We're still debating if having more than one | class value makes sense. Feedback welcome. --- I have two concerns here: 1) I assume the statement "CSS1 does not support this." means that CSS1 has no syntax for attaching multiple CLASSes to a selector, not that it fails to work on HTML elements that have multiple classes specified. I assume the class part of the simple selector matches whenever *any* of the classes attached to an element matches the class in the selector. For example, if there is a rule with the simple selector .rationale: {font-style: italic} that a paragraph tagged <P CLASS=abstract,rationale> would match that selector. If CSS1 *did* support multiple class components in a simple selector, there would be two possible interpretations: that the classes were ANDed or that the classes were ORed. That is, a selector containing two classes could match only when *both* were present or whenever *either* was present. Even though, as Bert Bos pointed out in a separate note, you can get the equivalent of ORed classes by just repeating the rest of the selector, it would still be a notational convenience to support the shorthand form. I would suggest supporting .class&class... to indicate ANDed classes and .class|class... to indicate ORed classes Having gone that far, you might as well support complete logical expression syntax, allowing .(rational&abstract)|(interface&description&~exception) 2) My more serious concern is that Cougar has mis-specified the CLASS attribute. It says it's a comma-separated list of classes, but both the standards (i18n and tables) that include CLASS say it's a space-separated list of classes. This needs to be fixed in Cougar before people go off and implement it. --- | | For ID, noone have suggested it being more that an single value -- | indeed, such a suggestion would defeat the purpose of ID. A | selector with more than one ID value would never select anything. --- Again, there are two possible meanings of having multiple values. It would make prefectly good sense to OR together IDs, but, as you note, not to AND them. scott -- scott preece motorola/mcg urbana design center 1101 e. university, urbana, il 61801 phone: 217-384-8589 fax: 217-384-8550 internet mail: preece@urbana.mcd.mot.com
Received on Tuesday, 8 October 1996 09:36:41 UTC