Каждый раз, когда я разрабатываю новую форму, которая включает в себя, у textarea
меня возникает следующая дилемма, когда мне нужно указать ее размеры:
Использовать CSS или использовать textarea
атрибуты cols
и rows
?
Каковы плюсы и минусы каждого метода?
Какова семантика использования этих атрибутов?
Как это обычно делается?
line-height
для высоты текстовой области.Это заставит браузер установить высоту текстовой области ТОЧНО на количество строк плюс отступы вокруг него. Установка высоты CSS на точное количество пикселей оставляет произвольные пробелы.
источник
height: auto;
в CSS, похоже, совсем не влияют на мою текстовую область.Согласно w3c, столбцы и строки являются обязательными атрибутами для текстовых областей. Rows and Cols - это количество символов, которые будут помещаться в текстовой области, а не в пикселях или других потенциально произвольных значениях. Перейти с строк / столбцов.
источник
Ответ "да". То есть вы должны использовать оба. Без строк и столбцов (и есть значения по умолчанию, даже если вы не используете их явно), текстовое поле будет необычайно маленьким, если CSS отключен или переопределен пользовательской таблицей стилей. Всегда помните о доступности. Тем не менее, если вашей таблице стилей разрешено контролировать внешний вид текстовой области, вы, как правило, получите что-то, что выглядит намного лучше, хорошо вписывается в общий дизайн страницы и может изменить размер, чтобы не отставать от пользовательского ввода ( в пределах хорошего вкуса, конечно).
источник
Для текстовой области мы можем использовать ниже CSS, чтобы исправить размер
Проверено в angularjs и angular7
источник
источник
Размер текстовой области может быть задан атрибутами cols и rows или даже лучше; через CSS свойства высоты и ширины. Атрибут cols поддерживается во всех основных браузерах. Одно из основных отличий состоит в том, что
<TEXTAREA ...>
это контейнерный тег: у него есть стартовый тег ().источник
Я обычно не указываю
height
, но уточняюwidth: ...
иrows
иcols
.Обычно в моих случаях только
width
иrows
нужно, чтобы текстовая область выглядела красиво по отношению к другим элементам. (Иcols
это запасной вариант, если кто-то не использует CSS, как объяснено в других ответах.)((Задание обоих
rows
иheight
похоже на дублирование данных, я думаю?))источник
Главной особенностью текстовых областей является то, что они расширяются. На веб-странице это может привести к появлению полос прокрутки в текстовой области, если длина текста превышает установленное вами пространство (будь то с использованием строк или с использованием CSS. Это может быть проблемой, когда пользователь решает печатать, особенно с «печать» в PDF - поэтому установите комфортно большую минимальную высоту для печатных текстовых полей с условным правилом CSS:
источник
если вы не используете каждый раз, используйте line-height: '..'; свойство контролирует высоту текстовой области и свойство ширины для текстовой области.
или вы можете использовать размер шрифта, выполнив следующую команду:
источник
HTML строки и столбцы не реагируют!
Поэтому я определяю размер в CSS. Как совет: если вы определяете небольшой размер для мобильных телефонов, подумайте об использовании
textarea:focus {};
Добавьте здесь дополнительное пространство, которое развернется только в тот момент, когда пользователь захочет что-то написать.
источник
CSS
HTML
источник