-
Notifications
You must be signed in to change notification settings - Fork 791
Expand file tree
/
Copy pathfonts.src
More file actions
639 lines (535 loc) · 24.2 KB
/
fonts.src
File metadata and controls
639 lines (535 loc) · 24.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/1998/REC-html40-19980424/loose.dtd">
<html lang="en">
<!-- $Id: fonts.src,v 2.70 2002-12-17 19:12:27 bbos Exp $ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Fonts</title>
<!-- Changed by: Tantek Celik, 2002-12-16 -->
<style type="text/css">
#AutoNumber2 td { text-align:center }
</style>
<style type="text/css">
.current,.proposed { background:#feb }
ins.proposed { background:#bfb }
del.proposed { background:#fbb }
body>del,body>ins {display:block}
</style>
</head>
<body>
<h1>Fonts</h1>
<h2>Introduction</h2>
<p>Setting font properties will be among the most common uses of style
sheets. Unfortunately, there exists no well-defined and universally
accepted taxonomy for classifying fonts, and terms that apply to one
font family may not be appropriate for others. E.g. 'italic' is
commonly used to label slanted text, but slanted text may also be
labeled as being <em>Oblique, Slanted, Incline, Cursive</em> or
<em>Kursiv</em>. Therefore it is not a simple problem to map typical
font selection properties to a specific font.
</p>
<h2><a name="algorithm">Font matching algorithm</a></h2>
<p>Because there is no accepted, universal taxonomy of font
properties, matching of properties to font faces must be done
carefully. The properties are matched in a well-defined order to
insure that the results of this matching process are as consistent as
possible across UAs (assuming that the same library of font faces is
presented to each of them).
</p>
<ol>
<li>The User Agent makes (or accesses) a database of relevant CSS 2.1
properties of all the fonts of which the UA is aware.
If there are two fonts with
exactly the same properties, one of them is ignored.
</li>
<li>At a given element and for each character in that element, the UA
assembles the font properties applicable to that element. Using the
complete set of properties, the UA uses the 'font-family' property to
choose a tentative font family. The remaining properties are tested
against the family according to the matching criteria described with
each property. If there are matches for all the remaining properties,
then that is the matching font face for the given element.
</li>
<li>If there is no matching font face within the 'font-family' being
processed by step 2, and if there is a next alternative 'font-family'
in the font set, then repeat step 2 with the next alternative
'font-family'.
</li>
<li>If there is a matching font face, but it doesn't contain a glyph
for the current character, and if there is a next alternative
'font-family' in the font sets, then repeat step 2 with the next
alternative 'font-family'. See <a href="#appendix-c">appendix C</a>
for a description of font and character encoding.
</li>
<li>If there is no font within the family selected in 2, then use a
UA-dependent default 'font-family' and repeat step 2, using the best
match that can be obtained within the default font.
If a particular character cannot be displayed using this font,
then the UA has no suitable font for that character.
The UA should map each character for which it has no suitable font
to a visible symbol chosen by the UA, preferably a "missing character"
glyph from one of the font faces available to the UA.
</li>
</ol>
<p>(The above algorithm can be optimized to avoid having to revisit
the CSS 2.1 properties for each character.)
</p>
<p>The per-property matching rules from (2) above are as follows:
</p>
<ol>
<li><a href="#font-style">'font-style'</a> is tried first. 'italic'
will be satisfied if there is either a face in the UA's font database
labeled with the CSS keyword 'italic' (preferred) or 'oblique'.
Otherwise the values must be matched exactly or font-style will fail.
</li>
<li><a href="#font-variant">'font-variant'</a> is tried next. 'normal'
matches a font not labeled as 'small-caps'; 'small-caps' matches (1) a
font labeled as 'small-caps', (2) a font in which the small caps are
synthesized, or (3) a font where all lowercase letters are replaced by
upper case letters. A small-caps font may be synthesized by
electronically scaling uppercase letters from a normal font.
</li>
<li><a href="#font-weight">'font-weight'</a> is matched next, it will
never fail. (See 'font-weight' below.)
</li>
<li><a href="#font-size">'font-size'</a> must be matched within a
UA-dependent margin of tolerance. (Typically, sizes for scalable fonts
are rounded to the nearest whole pixel, while the tolerance for
bitmapped fonts could be as large as 20%.) Further computations, e.g.
by 'em' values in other properties, are based on
the computed value of 'font-size'.
</li>
</ol>
<h2><a name="font-family-prop">Font family</a>: the <span
class="propinst-font-family">'font-family'</span> property</h2>
<!-- #include src=properties/font-family.srb -->
<p>The value is a prioritized list of font family names and/or generic
family names. Unlike most other CSS properties, values are separated
by a comma to indicate that they are alternatives:
</p>
<pre>
body { font-family: Gill, Helvetica, sans-serif }
</pre>
<p>Although many fonts provide the "missing character" glyph,
typically an open box, as its name implies this should not be
considered a match
for characters that cannot be found in the font. (It should,
however, be considered a match for U+FFFD, the "missing character"
character's code point).
</p>
<p>There are two types of font family names:
</p>
<dl>
<dt><a name="value-def-family-name"><family-name></a>
</dt>
<dd>The name of a font family of choice. In the last example, "Gill"
and "Helvetica" are font families.
</dd>
<dt><a name="value-def-generic-family"><generic-family></a>
</dt>
<dd>In the example above, the last value is a generic family name. The
following generic families are defined:
<ul>
<li>'serif' (e.g. Times)</li>
<li>'sans-serif' (e.g. Helvetica)</li>
<li>'cursive' (e.g. Zapf-Chancery)</li>
<li>'fantasy' (e.g. Western)</li>
<li>'monospace' (e.g. Courier)</li>
</ul>
<p>Style sheet designers are encouraged to offer a generic font family
as a last alternative. Generic font family names are keywords and must NOT be quoted.
</p>
</dd>
</dl>
<p>Font names containing whitespace should be quoted:
</p>
<pre>
body { font-family: "New Century Schoolbook", serif }
<BODY STYLE="font-family: 'My own font', fantasy">
</pre>
<p>If quoting is omitted, any whitespace characters before and after
the font name are ignored and any sequence of whitespace characters
inside the font name is converted to a single space.
</p>
<h2><a name="font-styling">Font styling</a>: the
<span class="propinst-font-style">'font-style'</span> property</h2>
<!-- #include src=properties/font-style.srb -->
<p>The 'font-style' property selects between normal (sometimes
referred to as "roman" or "upright"), italic and oblique faces within
a font family.
</p>
<p>A value of 'normal' selects a font that is classified as 'normal'
in the UA's font database, while 'oblique' selects a font that is
labeled 'oblique'. A value of 'italic' selects a font that is labeled
'italic', or, if that is not available, one labeled 'oblique'.
</p>
<p>The font that is labeled 'oblique' in the UA's font database may
actually have been generated by electronically slanting a normal font.
<p>Fonts with Oblique, Slanted or Incline in their names will
typically be labeled 'oblique' in the UA's font database. Fonts with
<em>Italic, Cursive</em> or <em>Kursiv</em> in their names will
typically be labeled 'italic'.
<pre>
h1, h2, h3 { font-style: italic }
h1 em { font-style: normal }
</pre>
<p>In the example above, emphasized text within 'H1' will appear in a
normal face.
<h2><a name="small-caps">Small-caps</a>: the
<span class="propinst-font-variant">'font-variant'</span> property</h2>
<!-- #include src=properties/font-variant.srb -->
<p>Another type of variation within a font family is the small-caps.
In a small-caps font the lower case letters look similar to the
uppercase ones, but in a smaller size and with slightly different
proportions. The 'font-variant' property selects that font.
<p>A value of 'normal' selects a font that is not a small-caps font,
'small-caps' selects a small-caps font. It is acceptable (but not
required) in CSS 2.1 if the small-caps font is a created by taking a
normal font and replacing the lower case letters by scaled uppercase
characters. As a last resort, uppercase letters will be used as
replacement for a small-caps font.
<p>The following example results in an 'H3' element in small-caps,
with any emphasized words in oblique, and any emphasized words within
an 'H3' oblique small-caps:
<pre>
h3 { font-variant: small-caps }
em { font-style: oblique }
</pre>
<p>There may be other variants in the font family as well, such as
fonts with old-style numerals, small-caps numerals, condensed or
expanded letters, etc. CSS 2.1 has no properties that select those.
<p><em>Note:</em> insofar as this property causes text to be
transformed to uppercase, the same considerations as for <a
href="#text-transform">'text-transform'</a> apply.
<h2><a name="font-boldness">Font boldness</a>: the
<span class="propinst-font-weight">'font-weight'</span> property</h2>
<!-- #include src=properties/font-weight.srb -->
<p>The 'font-weight' property selects the weight of the font. The
values '100' to '900' form an ordered sequence, where each number
indicates a weight that is at least as dark as its predecessor. The
keyword 'normal' is synonymous with '400', and 'bold' is synonymous
with '700'. Keywords other than 'normal' and 'bold' have been shown to
be often confused with font names and a numerical scale was therefore
chosen for the 9-value list.
<pre>
p { font-weight: normal } /* 400 */
h1 { font-weight: 700 } /* bold */
</pre>
<p>The 'bolder' and 'lighter' values select font weights that are
relative to the weight inherited from the parent:
<pre>
strong { font-weight: bolder }
</pre>
<p>Child elements inherit the resultant weight, not the keyword value.
<p>Fonts (the font data) typically have one or more properties whose
values are names that are descriptive of the "weight" of a font. There
is no accepted, universal meaning to these weight names. Their primary
role is to distinguish faces of differing darkness within a single
font family. Usage across font families is quite variant; for example,
a font that one might think of as being bold might be described as
being <em>Regular, Roman, Book, Medium, Semi-</em> or <em>DemiBold,
Bold,</em> or <em>Black,</em> depending on how black the "normal" face
of the font is within the design. Because there is no standard usage
of names, the weight property values in CSS 2.1 are given on a numerical
scale in which the value '400' (or 'normal') corresponds to the
"normal" text face for that family. The weight name associated with
that face will typically be <em>Book, Regular, Roman, Normal</em> or
sometimes <em>Medium</em>.
<p>The association of other weights within a family to the numerical
weight values is intended only to preserve the ordering of darkness
within that family. However, the following heuristics tell how the
assignment is done in typical cases:
<ul>
<li>If the font family already uses a numerical scale with nine values
(like e.g. <em>OpenType</em> does), the font weights should be mapped
directly.
<li>If there is both a face labeled <em>Medium</em> and one labeled
<em>Book, Regular, Roman</em> or <em>Normal,</em> then the
<em>Medium</em> is normally assigned to the '500'.
<li>The font labeled "Bold" will often correspond to the weight value '700'.
<li>If there are fewer then 9 weights in the family, the default
algorithm for filling the "holes" is as follows. If '500' is
unassigned, it will be assigned the same font as '400'. If any of the
values '600', '700', '800' or '900' remains unassigned, they are
assigned to the same face as the next darker assigned keyword, if any,
or the next lighter one otherwise. If any of '300', '200' or '100'
remains unassigned, it is assigned to the next lighter assigned
keyword, if any, or the next darker otherwise.
</ul>
<p>The following two examples show typical mappings.</p>
<div class="html-example">
<p>Assume four weights in the "Rattlesnake" family, from lightest to
darkest: <em>Regular, Medium, Bold, Heavy.</em></p>
<table border=1 summary="Example of font-weight mapping">
<caption>First example of font-weight mapping</caption>
<!-- rattlesnake, ostrich and more at the Austin meeting -->
<thead>
<tr><th>Available faces <th>Assignments <th>Filling the holes
</thead>
<tr><td>"Rattlesnake Regular" <td> 400 <td> 100, 200, 300
<tr><td>"Rattlesnake Medium" <td> 500 <td>
<tr><td>"Rattlesnake Bold" <td> 700 <td> 600
<tr><td>"Rattlesnake Heavy" <td> 800 <td> 900
</table>
</div>
<div class="html-example">
<p>Assume six weights in the
"Ice Prawn" family: <em>Book, Medium, Bold, Heavy, Black,
ExtraBlack.</em> Note that in this instance the user agent
has decided <em>not</em> to assign a numeric
value to "Ice Prawn ExtraBlack".</p>
<table border=1 summary="Example of font-weight mapping. Note
that ExtraBlack is not mapped to a value.">
<caption>Second example of font-weight mapping</caption>
<thead>
<tr><th>Available faces <th>Assignments <th>Filling the holes
</thead>
<tr><td>"Ice Prawn Book" <td> 400 <td> 100, 200, 300
<tr><td>"Ice Prawn Medium" <td> 500 <td>
<tr><td>"Ice Prawn Bold" <td> 700 <td> 600
<tr><td>"Ice Prawn Heavy" <td> 800 <td>
<tr><td>"Ice Prawn Black" <td> 900 <td>
<tr><td>"Ice Prawn ExtraBlack" <td> (none) <td>
</table>
</div>
<p>Since the intent of the relative keywords 'bolder' and 'lighter' is
to darken or lighten the face <em>within the family</em> and because a
family may not have faces aligned with all the symbolic weight values,
the matching of 'bolder' is to the next darker face available on the
client within the family and the matching of 'lighter' is to the next
lighter face within the family. To be precise, the meaning of the
relative keywords 'bolder' and 'lighter' is as follows:
<ul>
<li>'bolder' selects the next weight that is assigned to a font that
is darker than the inherited one. If there is no such weight, it
simply results in the next darker numerical value (and the font
remains unchanged), unless the inherited value was '900' in which case
the resulting weight is also '900'.
<li>'lighter' is similar, but works in the opposite direction: it
selects the next lighter keyword with a different font from the
inherited one, unless there is no such font, in which case it selects
the next lighter numerical value (and keeps the font unchanged).
</ul>
<p>There is no guarantee that there will be a darker face for each of
the 'font-weight' values; for example, some fonts may have only a
normal and a bold face, while others may have eight face weights.
There is no guarantee on how a UA will map font faces within a family
to weight values. The only guarantee is that a face of a given value
will be no less dark than the faces of lighter values.
<h2><a name="font-size-props">Font size</a>: the <span
class="propinst-font-size">'font-size'</span>
property</h2>
<!-- #include src=properties/font-size.srb -->
<p>The font size corresponds to the em square, a concept used in typography.
Note that certain glyphs may bleed outside their em squares. Values
have the following meanings:</p>
<dl>
<dt><b><a name="value-def-absolute-size"><absolute-size></a></b>
<dd>An <absolute-size> keyword is an index to a table of font
sizes computed and kept by the UA. Possible values are:
<p> [ xx-small | x-small | small | medium | large | x-large | xx-large ]
<p>The following table provides user agent guidelines for the absolute-size
scaling factor and their mapping to HTML heading and absolute font-sizes. The
'medium' value is used as the reference middle value. The user agent may fine
tune these values for different fonts or different types of display devices.</p>
<table border="1" style="border-collapse: collapse" width="73%" id="AutoNumber2">
<tr>
<th style="width:16%">CSS absolute-size values</th>
<td style="width:12%">xx-small</td>
<td style="width:9%">x-small</td>
<td style="width:10%">small</td>
<td style="width:11%">medium</td>
<td style="width:11%">large</td>
<td style="width:12%">x-large</td>
<td style="width:11%">xx-large</td>
<td style="width:8%"> </td>
</tr>
<tr>
<th style="width:16%">scaling factor</th>
<td style="width:12%">3/5</td>
<td style="width:9%">3/4</td>
<td style="width:10%">8/9</td>
<td style="width:11%">1</td>
<td style="width:11%">6/5</td>
<td style="width:12%">3/2</td>
<td style="width:11%">2/1</td>
<td style="width:8%">3/1</td>
</tr>
<tr>
<th style="width:16%">HTML headings</th>
<td style="width:12%">h6</td>
<td style="width:9%"> </td>
<td style="width:10%">h5</td>
<td style="width:11%">h4</td>
<td style="width:11%">h3</td>
<td style="width:12%">h2</td>
<td style="width:11%">h1</td>
<td style="width:8%"> </td>
</tr>
<tr>
<th style="width:16%">HTML font sizes</th>
<td style="width:12%">1</td>
<td style="width:9%"> </td>
<td style="width:10%">2</td>
<td style="width:11%">3</td>
<td style="width:11%">4</td>
<td style="width:12%">5</td>
<td style="width:11%">6</td>
<td style="width:8%">7</td>
</tr>
</table>
<p>
Different media may need different scaling factors. Also, the UA
should take the quality and availability of fonts into account when
computing the table. The table may be different from one font family
to another.
</p>
<p class="note"><em><strong>Note 1.</strong> To preserve readability, a UA applying
these guidelines should nevertheless avoid creating font-size resulting
in less than 9 pixels per EM unit on a computer display.</em></p>
<p class="note"><em><strong>Note 2.</strong> In CSS1, the suggested
scaling factor between adjacent indexes was 1.5 which user experience
proved to be too large. In CSS2, the suggested scaling factor for computer
screen between adjacent indexes was 1.2 which still created issues for the small
sizes. The new scaling factor varies between each index to provide better
readability.</em></p>
<dt><b><a name="value-def-relative-size"><relative-size></a></b>
<dd>A <relative-size> keyword is interpreted relative to the
table of font sizes and the font size of the parent element. Possible
values are: [ larger | smaller ]. For example, if the parent element
has a font size of 'medium', a value of 'larger' will make the font
size of the current element be 'large'. If the parent element's size
is not close to a table entry, the UA is free to interpolate between
table entries or round off to the closest one. The UA may have to
extrapolate table values if the numerical value goes beyond the
keywords.
</dl>
<p>Length and percentage values should not take the font size table
into account when calculating the font size of the element.
<p>Negative values are not allowed.
<p>On all other properties, 'em' and 'ex' length values refer to the
computed font size of the current element. On the 'font-size' property, these
length units refer to the computed font size of the parent element.
<p>Note that an application may reinterpret an explicit size,
depending on the context. E.g., inside a VR scene a font may get a
different size because of perspective distortion.
<p>Examples:
<pre>
p { font-size: 16px; }
@media print {
p { font-size: 12pt; }
}
blockquote { font-size: larger }
em { font-size: 150% }
em { font-size: 1.5em }
</pre>
<h2><a name="font-shorthand">Shorthand font property</a>: the <span class="propinst-font">'font'</span> property</h2>
<!-- #include src=properties/font.srb -->
<p>
The <span class="propinst-font">'font'</span> property is,
except as described <a href="#almost">below</a>, a shorthand property for
setting
<a href="#font-style">'font-style'</a>
<a href="#font-variant">'font-variant'</a>
<a href="#font-weight">'font-weight'</a>
<a href="#font-size">'font-size'</a>,
<a href="#line-height">'line-height'</a> and
<a href="#font-family">'font-family'</a> at the same place in the style
sheet. The syntax of this property is based on a traditional
typographical shorthand notation to set multiple properties related to
fonts.
<p>All font-related properties are first reset to their initial values,
including those listed in the preceding paragraph.
Then, those properties that are given explicit values in the
<span class="propinst-font">'font'</span> shorthand are set to those values.
For a definition of allowed and initial values, see the previously defined properties.
<pre>
p { font: 12px/14px sans-serif }
p { font: 80% sans-serif }
p { font: x-large/110% "New Century Schoolbook", serif }
p { font: bold italic large Palatino, serif }
p { font: normal small-caps 120%/120% fantasy }
</pre>
<p>In the second rule, the font size percentage value ('80%') refers
to the font size of the parent element. In the third rule, the line
height percentage refers to the font size of the element itself.
<p>In the first three rules above, the 'font-style', 'font-variant'
and 'font-weight' are not explicitly mentioned, which means they are
all three set to their initial value ('normal'). The fourth rule sets
the 'font-weight' to 'bold', the 'font-style' to 'italic' and
implicitly sets 'font-variant' to 'normal'.
<p>The fifth rule sets the 'font-variant' ('small-caps'), the
'font-size' (120% of the parent's font), the 'line-height' (120% times
the font size) and the 'font-family' ('fantasy'). It follows that the
keyword 'normal' applies to the two remaining properties: 'font-style'
and 'font-weight'.
<p>The following values refer to <span class="index-def" title="system
fonts">system fonts</span>:</p>
<dl>
<dt>caption
<dd>The font used for captioned controls (e.g., buttons, drop-downs, etc.).
<dt>icon
<dd>The font used to label icons.
<dt>menu
<dd>The font used in menus (e.g., dropdown menus and menu lists).
<dt>message-box
<dd>The font used in dialog boxes.
<dt>small-caption
<dd>The font used for labeling small controls.
<dt>status-bar
<dd>The font used in window status bars.
</dl>
<p>System fonts may only be set as a whole; that is, the font
family, size, weight, style, etc. are all set at the same time.
These values may then be altered individually if desired. If no
font with the indicated characteristics exists on a given platform,
the user agent should either intelligently substitute (e.g., a smaller
version of the 'caption' font might be used for the 'small-caption'
font), or substitute a user agent default font. As for regular fonts,
if, for a system font, any of the individual properties are not part
of the operating system's available user preferences, those properties
should be set to their initial values.
<p id="almost">That is why this property is "almost" a shorthand property: system
fonts can only be specified with this property, not with <span
class="propinst-font-family">'font-family'</span> itself, so <span
class="propinst-font">'font'</span> allows authors to do more than the
sum of its subproperties. However, the individual properties such as <span class="propinst-font-weight">'font-weight'</span> are still given values taken from the system font, which can be independently varied.</p>
<div class="example"><p>
<pre>
button { font: 300 italic 1.3em/1.7em "FB Armada", sans-serif }
button p { font: menu }
button p em { font-weight: bolder }
</pre>
<p>If the font used for dropdown menus on a particular system
happened to be, for example, 9-point Charcoal, with a weight of 600, then P
elements that were descendants of BUTTON would be displayed as if
this rule were in effect:
<pre>
button p { font: 600 9px Charcoal }
</pre>
<p>Because the <span class="propinst-font">'font'</span> shorthand
property resets any property not explicitly given a value
to its initial value, this has the same effect as this declaration:
<pre>
button p {
font-family: Charcoal;
font-style: normal;
font-variant: normal;
font-weight: 600;
font-size: 9px;
line-height: normal;
}
</pre>
</div>
</body>
</html>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-declaration:"~/SGML/HTML4.decl"
sgml-default-doctype-name:"html"
sgml-minimize-attributes:t
sgml-nofill-elements:("pre" "style" "br")
sgml-live-element-indicator:t
End:
-->