@popov654
Специалист в области веб-технологий

Почему textarea не подстраивает ширину автоматически?

Пытаюсь поправить вёрстку в своём старом проекте: xmessenger.ru/mobile (нужна регистрация), при этом столкнулся со странным поведением textarea. Элемент вложен в тег form, тот в свою очередь вложен в несколько дивов последовательно, один из которых по пути вверх в иерархии имеет абсолютное позиционирование.

Проблема такая: атрибуты left, right, top и bottom по отдельности работают, но width: auto не хочет работать ни в какую. При указании left и right, отсутствии max-width - все браузеры упорно ставят фиксированную ширину, взятую откуда-то "с потолка". Задание элементу form position: relative, задание ему же явной ширины, вложение в form дива с position: relative, удаление части элементов из form, задание всем потомкам form position: absolute результата не дают. Не работает ничего, абсолютно. Что я делаю не так?

Мне нужно растянуть textarea на весь экран (зафиксировать только левый и правый отступы). Я могу считать ширину на JavaScript, но это полный изврат. Прошу помощи.

UPD: ссылка на исходный код с проблемным полем: rgho.st/private/75XPkmXbH/6a3535a4cb99d176e27be427...
  • Вопрос задан
  • 6199 просмотров
Решения вопроса 1
@popov654 Автор вопроса
Специалист в области веб-технологий
Проблема решилась обёртыванием textarea в div. Почему div умеет вычислять ширину автоматически, а img, button, и textarea - нет (даже если им поставить display: block), для меня загадка.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
aliencash
@aliencash
Партизан
textarea {
width: 100%;
box-sizing: border-box;
}

И textarea будет шириной с родителя.
Ответ написан
gorbulevsv
@gorbulevsv
Самоучка
Парни, тоже пытался настроить <textarea>, потом нашёл в интернете простое решение: вместо <textarea> использовать
<div contenteditable="true">
или
<p contenteditable="true">
и всё, можно редактировать, ширина автоматически изменяется.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
27 нояб. 2024, в 19:08
1500 руб./в час
27 нояб. 2024, в 18:19
2000 руб./за проект
27 нояб. 2024, в 17:41
2000 руб./за проект