Limitations

Currently, the CSS Within implementations support neither separate compilation nor packages. This work is in progress at the time of writing this paper (April 2021).

Since there is no support yet for CSS at-rules such as @font, all such constructs must be placed in the header part of the CSS stylesheet. This precludes, for example, having differing font-face rules based on media queries (or complicates it). An alternative design was explored that involved giving css:rule elements attributes with the same names as CSS properties, such as font-family='"Times Roman", "times", serif'; this took CSS Within too far away from CSS syntax.

The CSS stylesheet is constructed from all of the css:rule and css:media elements in the order in which they occur in the stylesheet; there is no control over the ordering. It is not clear yet whether this is needed.

Finally, it is worth noting that CSS Within has only been use in single-person projects so far. Although the author took some trouble to keep the body of css:rule and css:media as plain text in CSS syntax, so that one can be in, so to speak, a CSS state of mind when reviewing the styles, the method has not been tested with different people working on CSS and on XSLT.