Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   TEXTAREA и style="width:100%;" (https://javascript.ru/forum/xhtml-html-css/3347-textarea-i-style%3D-width-100%25%3B.html)

Shasoft 10.04.2009 14:44

TEXTAREA и style="width:100%;"
 
Такой вот код:
Код:

.property_input {
 padding: 2px;
}

<div class="property_input">
<div id="first" style="width:100%; background-color: red;">
 <FORM METHOD="get" ACTION="#">
  <TEXTAREA NAME="" rows="3" style="width:100%;"></TEXTAREA>
 </FORM>
 </div>
</div>

При этом получаю несколько странный на мой взгляд результат.
Т.е. слой id="first" растягивается на всю ширину слоя property_input минус padding. А вот TEXTAREA растягивается БЕЗ УЧЕТА padding-а, но позиционируется с его учетом. В результате TEXTAREA вылазеет за правый край слоя property_input.
Это какая-то стандартная фишка или просто немного нестандартное поведение FF?

Riim 10.04.2009 14:56

width:100%; считается от полной ширины страницы. При этом особенность форм в том, что они могут и не растягивать элемент, в котором находятся, а вылизать за его край.

Shasoft 10.04.2009 15:04

В данном случае width:100% считается именно от div-а property_input, а не всего экрана, но только не учитывает padding :(

Есть ли нормальный способ с помощью CSS растянуть TEXTAREA по размеру DIV-а, но с УЧЕТОМ padding?

ZoNT 10.04.2009 15:14

можно: делаешь див, помещаешь его в див с пэддингом, а уже в этот див помещаешь текстарею.

Riim 10.04.2009 15:22

В DOCTYPE html 4.0 можно сделать.
До html 4.01 так все и считалось, и это было удобно. Зачем они все переделали.
Только таблицы сейчас по-старому считаются. Например, если у одного TD width: 100px; а у второго 100%, то ширина второго будет считаться от оставшегося места.

Shasoft 10.04.2009 16:01

ZoNT,
Так в примере так и написано. Div с padding, внутри div с form :(

ZoNT 10.04.2009 16:09

потестил твой пример - у меня всё нормально...

x-yuri 10.04.2009 17:36

Цитата:

потестил твой пример - у меня всё нормально...
может это и нормально, но у меня по-крайней не так как рассчитывает Shasoft
Shasoft, дело в том, что у textarea с двух сторон рамка по 2 px, а когда ты задаешь ширину textarea - это ширина содержимого, без учета рамки

Riim 10.04.2009 17:45

Цитата:

Сообщение от x-yuri
дело в том, что у textarea с двух сторон рамка

Про рамки то забыли.
textarea
{
	margin: 0px;
	border: 0px;
	padding: 0px;
}


А вообще полезно использовать reset.css


Часовой пояс GMT +3, время: 03:41.