There are certainly bugs in XXE, but not this one.
XXE has no way to guess that your test.css uses the UTF-8 encoding.
If you add (what follows is standard CSS):
---
@charset "UTF-8";
---
as the very first line of your test.css, it should work fine.
Michiel Kamermans wrote:
> I recently ran across a rather nasty bug in XMLmind XML Editor Standard,
> where UTF8 Japanese is read just fine from XML files, but when generated
> by CSS files is corrupted.
>
> As the attached jpg shows, the result that XXE comes up with for the
> attached xml/css testcase is rather different from what Firefox or other
> applications render. The error seems a lot like one that is encountered
> where UTF8 code is accidentally shifted left or right by up to a byte -
> This may want to be looked into.
>
> ------------------------------------------------------------------------
>
> etesttag:before {
> content: "test: ";
> }
>
> jtesttag:before {
> content: "?????????: ";
> }
>
>
> ------------------------------------------------------------------------
>
> <?xml version="1.0" encoding="UTF-8"?>
> <?xml-stylesheet href="test.css" type="text/css"?>
> <body>
> <etesttag>English</etesttag>
> <jtesttag>?????????</jtesttag>
> </body>
>