The properties not listed in the following two tables are not supported by XXE. |
The following properties can be inherited whether explicitly (inherit
keyword) or implicitly (inherited property).
For all properties except line-height where the specified number is inherited (which is the correct behavior), the inherited value is the actual value not the computed value.
Property | Value | Restrictions | |||
---|---|---|---|---|---|
background | [ background-color || background-image || background-repeat || background-attachment || background-position ] | inherit | Note that property background-attachment is not supported at all. Property background-attachment is always assumed to be | |||
background-color | color | transparent | inherit | normal[a] | - | |||
background-image | url | icon | linear-gradient() | none | inherit | Built-in images such as
Moreover, color stops expressed as pixels or as percentages outside the [0,100] range are not supported. For example: linear-gradient(red, white 20%, blue) is supported, while linear-gradient(red -50px, white, blue) linear-gradient(red, white -50%, black 150%, blue) are not. | |||
background-position | 0% 0% | top left | left top | length {1,2} | inherit | Percentages other than 0% 0% and positions other than top left and left top are correctly parsed but generally, not correctly rendered. | |||
background-repeat | repeat | repeat-x | repeat-y | no-repeat | inherit | - | |||
border | [ | - | |||
border-color | side_value{1,4} | - | |||
border-bottom-color | color | transparent | inherit | - | |||
border-left-color | " | - | |||
border-right-color | " | - | |||
border-top-color | " | - | |||
border-top-left-radius |
| -
| |||
border-top-right-radius | " | - | |||
border-bottom-left-radius | " | - | |||
border-bottom-right-radius | " | - | |||
border-radius | [ | - | |||
border-style | side_value{1,4} | - | |||
border-top-style | none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset | - | |||
border-right-style | " | - | |||
border-bottom-style | " | - | |||
border-left-style | " | - | |||
border-width | thin | thick | medium | length | inherit | Note that border-top-width, border-right-width, border-bottom-width and border-left-width, while successfully parsed are not really supported. | |||
color | color | inherit | normal[a] | System colors ( | |||
counter-reset, counter-increment | [ identifier integer ? ]+ | none | inherit | - | |||
display | none | inline | block | list-item | marker | table | inline-table | table-row-group | table-header-group | table-footer-group | table-row | table-column-group | table-column | table-cell | table-caption | inline-block | tree | inherit | table-header-group and table-footer-group are considered to be equivalent to table-row-group . Normally table-header-group s should be displayed before first table-row-group and table-footer-group s should be displayed after last table-row-group . | |||
font | [ [ | Font-variant is correctly parsed, but not honored. System fonts ( | |||
font-family | [[name | generic] ,]* [name | generic] | inherit | normal[a] | The generic font families cursive and fantasy are not supported. | |||
font-size | medium | small | large | x-small | x-large | xx-small | xx-large | smaller | larger | length | percentage | inherit | - | |||
font-style | normal | italic | oblique | inherit | Italic and oblique are aliases. | |||
font-weight | normal | bold | bolder| lighter | inherit | No N00. Bolder and bold are aliases. Lighter and normal are aliases. | |||
line-height | normal | | - | |||
list-style-image | URI | none | | inherit | Also supports icon(name ). | |||
list-style-position | outside | inside | inherit | - | |||
list-style-type | decimal | lower-alpha | upper-alpha | lower-roman | upper-roman | none | inherit | No decimal-leading-zero, hebrew, armenian, lower-greek, etc. | |||
list-style | [ list-style-type || list-style-position || list-style-image ] | inherit | - | |||
margin | side_value{1,4} | - | |||
margin-bottom | length | auto | inherit | No percentage. | |||
margin-left | " | - | |||
margin-right | " | - | |||
margin-top | " | - | |||
padding | side_value{1,4} | - | |||
padding-bottom | length | inherit | No percentage. | |||
padding-left | " | - | |||
padding-right | " | - | |||
padding-top | " | - | |||
text-align | left | right | center | justify | inherit | Justify and left are aliases. | |||
text-decoration | none | underline | overline | line-through | inherit | No blink. | |||
text-indent | length | inherit | No percentage. | |||
vertical-align | baseline | middle | sub | super | text-top | top | text-bottom | bottom | inherit | No length, percentage. | |||
white-space | normal | pre | nowrap | inherit | - | |||
[a] " |
The following properties cannot be inherited whether explicitly (inherit
keyword) or implicitly (inherited property).
Property | Value | Restrictions |
---|---|---|
border-spacing | length length? | - |
caption-side | top | bottom | left, right, inherit are not supported. |
content | normal | none | string | uri | attr(X) | open-quote | close-quote | no-open-quote | no-close-quote | counter(name) | counter(name, style) | counters(name, separ) | counters(name, separ, style) | disc | circle | square | see extensions | No-open-quote, no-close-quote are ignored. Counter styles are limited to: decimal, lower-alpha, lower-latin, upper-alpha, upper-latin, lower-roman, upper-roman. |
height | length | auto | No percentage. This property is currently ignored. |
marker-offset | length | auto | fill | No percentage. |
width | length | auto | No percentage. This property is currently only useful to specify the minimum width of a table cell. |
Implementation specificities and restrictions:
The CSS box decorations (border, padding, etc) are not supported for inlined elements. The background-color is the only property supported for such elements.
A workaround consists in using display: inline-block;
. See Section 8, “New values for the display property”.
When a CSS box has at least one rounded corner (specified using any of the border-radius properties), the only supported border-styles are: dotted
, dashed
and solid
.
When the directionality of the element (e.g. the element has or inherits attribute dir="rtl"
) which is the subject of the CSS rule is right-to-left and when its display is list-item
, block
, inline-block
or inline
.
text-align: left;
is processed as if it were text-align: start;
and text-align: right;
is processed as if it were text-align: end;
margin-left is processed as if it were CSS logical property margin-inline-start. margin-right is processed as if it were CSS logical property margin-inline-end.
padding-left is processed as if it were CSS logical property padding-inline-start. padding-right is processed as if it were CSS logical property padding-inline-end.
border-left-color is processed as if it were CSS logical property border-inline-start-color. border-right-color is processed as if it were CSS logical property border-inline-end-color.
border-left-style is processed as if it were CSS logical property border-inline-start-style. border-right-style is processed as if it were CSS logical property border-inline-end-style.
Properties border-top-left-radius, border-bottom-left-radius, border-top-right-radius, border-bottom-right-radius are processed as if they were CSS logical properties border-start-start-radius, border-start-end-radius, border-end-start-radius, border-end-end-radius respectively.
:first-letter
and :first-line
pseudo-elements are ignored.
The !important
specifier is ignored.
@import
rules may be specified anywhere in a CSS file. This is not allowed by the CSS standard which requires such rules to precede all other rules except the @charset
rule.
The following properties are correctly parsed but generally, not correctly rendered:
border-top, border-right, border-bottom, border-left.
border-top-style, border-right-style, border-bottom-style, border-left-style.
border-top-width, border-right-width, border-bottom-width, border-left-width.
background-position: percentage
other that 0% 0% and keywords other than left
top
and top
left
.
Property border-collapse
is parsed but not implemented. Note that only border-collapse:separate
is supported.
@font-face
rules are supported however the required src
property must contain at least one url()
item ending with ".ttf
" or ".otf
". This feature is mainly useful to be able to use icons fonts such as "Font Awesome". Example:
@font-face { font-family: icon; src: url(https://maxcdn.bootstrapcdn.com/font-awesome/¬ 4.4.0/fonts/fontawesome-webfont.ttf); } quote:before { content: "\f10d"; /*fa-quote-left*/ font-family: icon; color: gray; } quote:after { content: "\f10e"; /*fa-quote-right*/ font-family: icon; color: gray; }
The @media
rule is supported to a limited extent. Only a comma-separated list of media types (like "print
") is supported, not media features (like "print and (orientation: portrait)
").
XXE makes use of the following media types: all
, print
, screen
, xmlmind-xml-editor
. Media type print
is considered only when using menu item → . DocBook example:
@media print { colspec, spanspec { display: none; } }
The same restrictions apply to the media
pseudo-attribute of the xml-stylesheet
processing instruction. Example of such processing instruction:
<?xml-stylesheet href="screen.css" type="text/css" media="screen,tv,projection"?>