The spec really under-describes what the two options flush and
margin are meant to do, how they are different, or which of them is
meant to give the example output. The only thing we know is that plain
text mode is mean to have spaces for padding out to the width of the
longest first field, and that isn't implemented. But this at least
usefully emulates citeproc-js, which splits the fields into two divs
with display attributes on them. HTML and RTF are a priority, which
when using variable-width fonts will not render aligning spaces
remotely as intended. So this is all you can really do.
The spec really under-describes what the two options
flush
andmargin
are meant to do, how they are different, or which of them is meant to give the example output. The only thing we know is that plain text mode is mean to have spaces for padding out to the width of the longest first field, and that isn't implemented. But this at least usefully emulates citeproc-js, which splits the fields into two divs with display attributes on them. HTML and RTF are a priority, which when using variable-width fonts will not render aligning spaces remotely as intended. So this is all you can really do.