Extra space under textarea, differs along browsers

Add vertical-align: top to textarea.

The reason for the gap is that textarea is an inline (or inline-block) element, and the gap is the space reserved for descenders in text. I don't know exactly why the gap is different between different browsers.


In my case, thirtydot's answer didn't work well with the parent <div>'s bottom border.

display: block suited me nicely though.


I also found that the space goes away if the textarea's parent is using display:flex:

/* The relevant part: */
#FlexLayout { display: flex; flex-direction: column; }

/* The boring part: */
.ShowChildBorders * { border: 1px solid; }
#DefaultLayout * { border-color: red; }
#FlexLayout * { border-color: green; }
#SideBySide { display: flex; }
#SideBySide > div { flex: 1; margin: 4px; }
#SideBySide * { margin: 0; padding: 0; }
<div id="SideBySide">
  <div class="ShowChildBorders">
    <div id="DefaultLayout">
      <div>Default Layout</div>
      <textarea>Text Area</textarea><br/>
      <textarea>Text Area</textarea>
    </div>
  </div>
  <div class="ShowChildBorders">
    <div id="FlexLayout">
      <div>Flexbox Layout</div>
      <textarea>Text Area</textarea>
      <textarea>Text Area</textarea>
    </div>
  </div>
</div>

On Chrome 91.0.4472.77, Windows 10 64-bit, that renders as:

enter image description here