0.2. Property Conventions
Throughout this book, there are boxes that break down a given CSS
property. These have been reproduced practically verbatim from the
CSS specifications, but some explanation of the syntax is in order.
Throughout, the allowed values for each property are listed with a
syntax like the following:
Value: [ <length> | thick | thin ]{1,4}
Value: [<family-name> , ]* <family-name>
Value: <url>? <color> [ / <color> ]?
Value: <url> || <color>
Any words between < and >
give a type of value, or a reference to another property. For
example, the property font will accept values
which actually belong to the property font-family.
This is denoted by using the text "<font-family>."
Any words presented in constant width text are keywords that must
appear literally, without quotes. The forward slash ( / ) and the
comma ( , ) must also be used literally.
Several keywords strung together means that all of them must
occur -- in the given order. For example, help
me would mean that the property must use those
keywords in that exact order.
If a vertical bar ( X | Y ) separates alternatives, then any one of
them must occur. A vertical double bar ( X || Y ) means that either X
or Y, or both, must occur, but they may appear in any order. Brackets
( [...] ) are for grouping things together. Juxtaposition is stronger
than the double bar, and the double bar is stronger than the bar.
Thus "V W | X || Y Z" is equivalent to " [ V W ] |
[ X || [ Y Z ]] ."
Every word or bracketed group may be followed by one of the following
modifiers:
-
An asterisk (*) indicates that the preceding value or bracketed group
is repeated zero or more times. Thus, bucket*
means that the word bucket can be used any number
of times, including zero. There is no defined upper limit on the
number of times it can be used.
-
A plus (+) indicates that the preceding value or bracketed group is
repeated one or more times. Thus, mop+ means that
the word mop must be used at least once, and
potentially many more times.
-
A question mark (?) indicates that the preceding value or bracketed
group is optional. For example, [ pine
tree ]? means that the words
pine tree need not be used
(although they must appear in that exact order if they are used).
-
A pair of numbers in curly braces ({M,N}) indicates that the
preceding value or bracketed group is repeated at least M and at most
N times. For example, ha{1,3} means that there can
be one, two, or three instances of the word ha.
Following are some examples:
- give|| me|| liberty
-
At least one of the three words must be used, and all of them can be
used in any order. For example, give
liberty, give
me, liberty
me give, and
give me
liberty are all valid interpretations of this
example.
- [ I| am] ? the|| walrus
-
Either, but not both, of the words I or
am may be used, but use of either is optional. In
addition, either the or walrus,
or both, must follow. Thus, you could construct I
the walrus,
am walrus
the, am the,
I walrus,
walrus the, and so forth.
- koo+ ka-choo
-
One or more instances of koo must be followed by
ka-choo. Therefore, koo
koo ka-choo,
koo koo koo
ka-choo, and koo
ka-choo are all legal. The number of
koos is potentially infinite, although there are
bound to be implementation-specific limits.
- I really {1,4}* [ love| hate] [ Microsoft| Netscape ]
-
The all-purpose web designer's opinion-expresser. This can be
interpreted as I love
Netscape, I
really love
Microsoft, and similar expressions. Anywhere from
zero to four really s may be used. You also get to
pick between love and hate,
even though only love was shown in this example.
- [[[ Alpha|| Baker|| Cray ] ,]{2,3} and ] Delphi
-
This is a potentially long and complicated expression. One possible
result would be Alpha, Cray,
and Delphi. Another is
Alpha Baker,
Cray Alpha,
Baker Cray
Alpha, and
Delphi. The comma is placed due to its position
within the nested bracket groups.
| | | 0. Preface | | 0.3. How to Contact Us |
Copyright © 2002 O'Reilly & Associates. All rights reserved.
|
|