It is currently possible to normalize the width of the "dimensional" inputs using the ch block, which has achieved decent browser support.
Unfortunately, recording is still not possible:
input[size] { width: attr(size) "ch"; }
So, we have to create the width that we know, we will use:
input[size="10"] {width: 10ch;} input[size="20"] {width: 20ch;} input[size="30"] {width: 30ch;}
This can be easily automated using a CSS preprocessor.
UPDATE:
I made a test script . Today (February 2018), this works on Windows 10 with Chrome 63, Edge 41, FF 58. In IE 11, it fails. I have not tried OS X.
xfra35
source share