Its too bad browsers don't support this.
// Do CSS layout in the regular document
const doc = new CssLayout(document);
doc.layout(...);
// Do CSS layout on your own canvas
const mycanvas = new CssLayout(document.getElementById('mycanvas'));
mycanvas.layout(...);