#html #css
#HTML #css
Вопрос:
У меня есть текстовая область внутри тега TD, и я хочу установить ширину текстовой области на 100%, чтобы ширина совпадала с шириной TD.
Я использовал:
textarea{width:100%}
Но это не сработало.
У кого-нибудь есть идеи, почему это не работает, пожалуйста?
Спасибо
Комментарии:
1.
"it didn't work"
это крайне бесполезное описание проблемы. Что в этом плохого, из-за чего вы говорите, что это «не работает»?2. Работает в этом скрипте … трудно сказать, почему это не работает в вашем случае без дополнительной информации. Возможно, мешает другой стиль?
3. @optus: ты установил ширину для своего td, мошенник 😉 Я думаю, что @Satch3000 забыл об этом.
Ответ №1:
Проблема, насколько я могу думать, в том, что ваша текстовая область хочет получить свою ширину (100%) из td
, в котором она находится. Но a td
по умолчанию имеет динамическую ширину, поэтому, если вы не укажете ширину вашей td
, вы не получите, чтобы текстовая область занимала 100% вашей ячейки.
Ячейка сама по себе не имеет ширины, хотя вы могли бы подумать, что она автоматически масштабируется вместе с вашей таблицей. Ну, это не так, потому что это автоматическое масштабирование определяется содержимым внутри него. Таким образом, содержимое 100% интерпретируется неправильно, потому что 100% зависит от ширины td
, которая сама по себе является динамической.
И я могу продолжить цикл с этим ответом следующим образом…
Ответ №2:
Вы закрыли тег textarea? Работает следующее:
<html>
<head>
</head>
<body>
<table style="width:500px;border:1px solid red"><tr><td>
<textarea style="width:100%"></textarea>
</td></tr></table>
</body>
</html>
Комментарии:
1. Почему это работает только тогда, когда я использую встроенный css? Я хотел бы установить для всех текстовых областей значение 100%, но работают только встроенные стили.
2. Вероятно, потому, что другой класс CSS более специфичен . Настройка
style
атрибута напрямую в значительной степени наиболее специфична.3. Вы также можете попробовать переопределить более конкретные селекторы: textarea{ширина: 100%!важно}
Ответ №3:
Попробуйте
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;