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
/* section numbers refer to CSS2.1 */
/* page setup */
}
}
/* introduction message */
}
}
}
}
}
/* picture setup */
} /* "Hello World!" text */
} /* containing block for face */
} /* overriden by preferred stylesheet below */
/* top line of face (scalp): fixed positioning and min/max height/width */
}
/* bits that shouldn't be part of the top line (and shouldn't be visible at all): HTML parsing, "+" combinator, stacking order */
}
} /* shouldn't match anything */
}
/* second line of face: attribute selectors, float positioning */
}
} /* only content of abs pos block */
/* third line of face: width and overflow */
}
}
/* class selectors headache */
} /* shouldn't match */
} /* shouldn't match */
/* [class=second two] {} */ /* this should be ignored (invalid selector -- grammar says it only accepts IDENTs or STRINGs) */
/* fourth and fifth lines of face, with eyes: paint order test (see appendix E) and fixed backgrounds */
/* the two images are identical: 2-by-2 squares with the top left
and bottom right pixels set to yellow and the other two set to
transparent. Since they are offset by one pixel from each other,
the second one paints exactly over the transparent parts of the
first one, thus creating a solid yellow block. */
}
} /* contents should paint top-most because they're inline */
}
} /* should have no effect since that object should fallback to being inline (height/width don't apply to inlines) */
}
} /* should paint in the middle layer because it is a float */
} /* should paint bottom most because it is a block */
/* lines six to nine, with nose: auto margins */
}
}
}
}
}
}
}
}
/* between lines nine and ten: margin collapsing with 'float' and 'clear' */
}
}
}
/* line ten and eleven: containing block for abs pos */
}
}
/* smile (over lines ten and eleven): backgrounds behind borders, inheritance of 'float', nested floats, negative heights */
}
} /* zero-height block; width comes from (zero-height) child. */
}
/* line twelve: line-height */
}
}
/* line thirteen: cascade and selector tests */
} /* setup */
} /* setup */
} /* setup */
/* line thirteen continued: parser tests */
/* .parser {} */
/* .parser {}; background: yellow; } setup with parsing test */
}
\}
/* .parser {}; */
}
}
/* .parser {} */
}
/* line fourteen (last line of face): table */
}
}
}
} /* anonymous table cell wraps around this */
}
} /* anonymous table cell wraps around this */
/* bits that shouldn't appear: inline alignment in cells */
} /* only the area between the top of the line box and the top of the image should be visible */
}
}