Автоматическая высота textarea

Делаем адаптивную высоту у textarea по содержимому

Для создания textarea, который автоматически изменяет свою высоту в зависимости от содержимого, вы можете использовать следующий подход:

textarea {
  box-sizing: border-box;
}
// Получаем элемент textarea
const textarea = document.querySelector('textarea');

// Вешаем слушатель события ввода
textarea.addEventListener('input', ()=> {
  // обнуляем высоту, чтобы поле уменьшалось, если содержимое уменьшается
  textarea.style.height = ``

  // Устанавливаем высоту равной высоте поля со скроллом.
  // При этом прибавляем к ней размер бордера снизу + сверху.
  // Тоесть если бордер размером 1px, значит добавляем 2px.
  textarea.style.height = `${textarea.scrollHeight + 2}px`
})