Makes layout respect <textarea> rows and cols attributes

...with a bit of a caveat: sizing has the same problem as seen in #4378, and it is _significantly_ more noticeable when using `rows`.

Fixes #4291
Can you add your name here after `TODO`?