CSS Conformance

AH Formatter CSS Conformance

AH Formatter V6.2‘s CSS implementation is based on the following specifications:

NOTE: Many of CSS3 specifications are still under the draft or the state before draft. Although the specifications above are linked to the latest version at the time when this document was written, AH Formatter V6.2 implementation is not necessarily based on them. Each property in this document includes the link to the specification that is the base of the implementation. ([CSS3-GCPM] etc. written at the beginning is an abbreviated name when refering to the specification.)
  • [yes] in the list means that the formatting object or property is implemented.
  • [partial] means that the formatting object or property is partially implemented.
  • [no] means not implemented.

Sometimes items with [yes] have some limitation(s) that do not affect their ability to accomplish the specified tasks.

CSS Level 2 Revision 1 (CSS2.1)


4 Syntax and basic data types

Name Current condition Comments
4.4 @charset yes
Encodings

5 Selectors

Name Current condition Comments
5.2.1 Grouping (,) yes
5.3 Universal selector (*) yes
5.4 Type selectors (E) yes
5.5 Descendant selectors (E F) yes
5.6 Child selector (E > F) yes
5.7 Adjacent sibling selectors (E + F) yes
5.8.1 Matching attributes and attribute values ([att], [att=val], [att~=val], [att|=val]) yes
5.8.3 Class selectors (.class) yes
5.9 ID selectors (#id) yes
5.11.1 The :first-child pseudo-class yes
5.11.2 The link pseudo-classes: :link and :visited partial :visited is not supported.
5.11.3 The dynamic pseudo-classes: :hover, :active, and :focus no
5.11.4 The language pseudo-class: lang yes
5.12.1 The :first-line pseudo-element yes
5.12.2 The :first-letter pseudo-element yes
5.12.3 The :before and :after pseudo-elements yes

6 Assigning property values, Cascading, and Inheritance

Name Current condition Comments
6.2.1 The ‘inherit‘ value yes
6.3 The @import rule yes
6.4.2 !important rules yes

7 Media types

Name Current condition Comments
7.2.1 The @media rule yes ‘print’ and ‘all’ media types are supported.

8 Box model

Name Current condition Comments
8.3 Margin properties:margin-top‘, ‘margin-right‘, ‘margin-bottom‘, ‘margin-left‘, ‘margin yes
8.4 Padding properties:padding-top‘, ‘padding-right‘, ‘padding-bottom‘, ‘padding-left‘, ‘padding yes
8.5.1 Border width:border-top-width‘, ‘border-right-width‘, ‘border-bottom-width‘, ‘border-left-width‘, ‘border-width yes
8.5.2 Border color:border-top-color‘, ‘border-right-color‘, ‘border-bottom-color‘, ‘border-left-color‘, ‘border-color yes
8.5.3 Border style:border-top-style‘, ‘border-right-style‘, ‘border-bottom-style‘, ‘border-left-style‘, ‘border-style yes
8.5.4 Border shorthand properties:border-top‘, ‘border-right‘, ‘border-bottom‘, ‘border-left‘, ‘border yes

9 Visual formatting model

Name Current condition Comments
9.2.4 The ‘display‘ property yes
9.3.1 Choosing a positioning scheme:position yes
9.3.2 Box offsets:top‘, ‘right‘, ‘bottom‘, ‘left yes
9.5.1 Positioning the float:float yes The page break (column break) in the float is supported.
9.5.2 Controlling flow next to floats:clear yes
9.9.1 Specifying the stack level:z-index yes
9.10 Text direction:direction‘, ‘unicode-bidi yes

10 Visual formatting model details

Name Current condition Comments
10.2 Content width:width yes
10.4 Minimum and maximum widths:min-width‘, ‘max-width yes
10.5 Content height:height yes
10.7 Minimum and maximum heights:min-height‘, ‘max-height yes
10.8 Line height calculations: ‘line-height yes
10.8 Line height calculations: ‘vertical-align yes

11 Visual effects

Name Current condition Comments
11.1.1 Overflow:overflow yes
11.1.2 Clipping:clip yes
11.2 Visibility:visibility yes visibility:collapse specified to table-column is considered as hidden.

12 Generated content, automatic numbering, and lists

Name Current condition Comments
12.2 The ‘content‘ property yes open-quote, close-quote, no-open-quote and no-close-quote are supported.
12.3.1 Specifying quotes with the ‘quotes‘ property yes
12.4 Automatic counters and numbering: ‘counter() yes
12.4 Automatic counters and numbering: ‘counters() yes
12.4 Automatic counters and numbering: ‘counter-reset yes
12.4 Automatic counters and numbering: ‘counter-increment yes
12.5.1 Lists: ‘list-style-type yes
12.5.1 Lists: ‘list-style-image yes
12.5.1 Lists: ‘list-style-position yes
12.5.1 Lists: ‘list-style yes

13 Paged media

Name Current condition Comments
13.2 Page boxes: the @page rule yes
13.2.2 Page selectors: selecting left, right, and first pages (:left, :right, :first) yes
13.3.1 Page break properties:page-break-before‘, ‘page-break-after‘, ‘page-break-inside yes
13.3.2 Breaks inside elements:orphans‘, ‘widows yes

14 Colors and Backgrounds

Name Current condition Comments
14.1 Foreground color: ‘color yes
14.2.1 Background properties: ‘background-color yes
14.2.1 Background properties: ‘background-image yes
14.2.1 Background properties: ‘background-repeat yes
14.2.1 Background properties: ‘background-attachment yes
14.2.1 Background properties: ‘background-position yes
14.2.1 Background properties: ‘background yes

15 Fonts

Name Current condition Comments
15.3 Font family:font-family yes
15.4 Font styling:font-style yes
15.5 Small-caps:font-variant yes
15.6 Font boldness:font-weight yes
15.7 Font size:font-size yes
15.8 Shorthand font property:font yes

16 Text

Name Current condition Comments
16.1 Indentation:text-indent yes
16.2 Alignment:text-align yes
16.3.1 Underlining, overlining, striking, and blinking:text-decoration yes Limitation: blink is not supported.
16.4 Letter and word spacing: ‘letter-spacing yes
16.4 Letter and word spacing: ‘word-spacing yes
16.5 Capitalization: ‘text-transform yes
16.6 Whitespace: ‘white-space yes

17 Tables

Name Current condition Comments
17.4.1 Caption position and alignment:caption-side yes
17.5.2 Table width algorithms:table-layout yes
17.6.1 The separated borders model:border-spacing yes
17.6.1.1 Borders and Backgrounds around empty cells:empty-cells yes
17.6.2 The collapsing border model:border-collapse yes

18 User interface

Name Current condition Comments
18.1 Cursors: ‘cursor no
18.4 Dynamic outlines: ‘outline no

CSS3

Please find a list of implemented CSS3 and properties in “XSL/CSS Properties List“.


Selectors

Name Current condition Comments
General sibling combinator (E ~ F) yes [CSS3-Selectors]

@ rules

Name Current condition Comments
@font-face partial [CSS3-Fonts]
<axf:font-face> / @font-face
@footnote yes [CSS3-GCPM]
‘display: inline’ is not supported yet.
Footnotes/sidenotes by CSS

@sidenote yes [CSS3-GCPM]
Footnotes/sidenotes by CSS

@namespace yes [CSS3-Namespace]
@page yes [CSS3-Page]
@page :left, :right, :first, :blank yes [CSS3-Page]
@top-left-corner yes [CSS3-Page]
@top-left yes [CSS3-Page]
@top-center yes [CSS3-Page]
@top-right yes [CSS3-Page]
@top-right-corner yes [CSS3-Page]
@left-top yes [CSS3-Page]
@left-middle yes [CSS3-Page]
@left-bottom yes [CSS3-Page]
@right-top yes [CSS3-Page]
@right-middle yes [CSS3-Page]
@right-bottom yes [CSS3-Page]
@bottom-left-corner yes [CSS3-Page]
@bottom-left yes [CSS3-Page]
@bottom-center yes [CSS3-Page]
@bottom-right yes [CSS3-Page]
@bottom-right-corner yes [CSS3-Page]

Pseudo Classes

Name Current condition Comments
:root yes [CSS3-Selectors]
:nth-child() yes [CSS3-Selectors]
:nth-last-child() yes [CSS3-Selectors]
:nth-of-type() yes [CSS3-Selectors]
:nth-last-of-type() yes [CSS3-Selectors]
:first-child yes [CSS3-Selectors]
:last-child yes [CSS3-Selectors]
:first-of-type yes [CSS3-Selectors]
:last-of-type yes [CSS3-Selectors]
:only-child yes [CSS3-Selectors]
:only-of-type yes [CSS3-Selectors]
:empty yes [CSS3-Selectors]
:not yes [CSS3-Selectors]

Pseudo Elements

Name Current condition Comments
::footnote-call yes [CSS3-GCPM]
Footnotes/sidenotes by CSS

::footnote-marker yes [CSS3-GCPM]
Footnotes/sidenotes by CSS

::sidenote-call yes [CSS3-GCPM]
Footnotes/sidenotes by CSS

::sidenote-marker yes [CSS3-GCPM]
Footnotes/sidenotes by CSS

::marker yes [CSS3-Lists]
::before yes [CSS3-Selectors]
::after yes [CSS3-Selectors]

Functions

Name Current condition Comments
string() yes [CSS3-GCPM]
running() yes [CSS3-GCPM]
element() yes [CSS3-GCPM]
leader() yes [CSS3-GCPM]
target-counter() yes [CSS3-GCPM]
target-counters() yes [CSS3-GCPM]
target-text() yes [CSS3-GCPM]
counter() yes [CSS3-Page]
counter()
attr() yes [CSS3-Values]
attr()
url() yes [CSS3-Values]
URI
calc() yes [CSS3-Values]