libRocket is one of my ui-systems and it actually did work with emscripten outofthebox for one exception. For some reason rcss was not able to parse em-based values into float-values. It took me a some time to realise that emscriptens sscanf-function sees “0.5em” in opposite to all other compilers tested yet as an invalid value. When parsing the e-character it expects obviously another value afterwards.
Actually I wonder why the other compilers did convert 0.5em to 0.5f without 2nd thought. I changed the libRocket code to remove the suffix on the sscanf-call and now it works.
Here is the pull-request: