W3C home > Mailing lists > Public > www-style@w3.org > October 2003

Re: css21 sec 8.5.4 border shorthand

From: Kevin W. <null@ozforces.com.au>
Date: Sun, 19 Oct 2003 10:26:21 +1000
To: Tex Texin <tex@i18nguy.com>, Boris Zbarsky <bzbarsky@MIT.EDU>
Cc: www-style@w3.org
Message-ID: <oprw9kt7boou6nf2@smtp.ozforces.com.au>

> However, doesn't the same issue hold for width and style, in that each 
> of those values can only be a single value?

Actually, it doesn't.  If you look closely at the Value definition:

Value: [ <border-width> || <border-style> || <'border-top-color'> ] | 
inherit

border-width and border-style do not have quotes.  border-top-color does.  
This means that <'border-top-color'> is referring to the actual property 
'border-top-color' (<color> | transparent | inherit), while <border-width> 
is referring to the value type <border-width> (thin | medium | thick | 
<length>), and not the property 'border-width' (<border-width>{1,4} | 
inherit).  See CSS2.1:1.4.2 for an explanation of the syntax definitions.

So <border-width>, <border-style> and <'border-top-color'> can all only be 
a single value.
However, <'border-width'>, <'border-style'> and <'border-top'> can be 
multiple values.

The syntax definitions are technically correct, though perhaps confusing.  
It just turned out this way because the value of border-top-color was 
simple enough to define in one go, without having to define a new value 
type.

> 2) Since {1,4} is used in places to indicate that up to 4 choices are
> available, {1} might be used to indicate a single choice.

{1, 1} is assumed when it's omitted.  See the CSS2.1:1.4.2 for an 
explanation of the syntax definitions.

-- 
Kevin W :-)
Opera/CSS/webdev blog: http://trats.ozforces.com.au/
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
Received on Saturday, 18 October 2003 20:33:21 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:24 GMT