2009-08-31 9 views
5

La proprietà CSS 'width' è applicabile a <textarea>?La "larghezza" è applicabile a una textarea?

In pratica, people say that they use it successfully, ad esempio utilizzando una regola come questa:

textarea 
{ 
    width:100%; 
} 

Cosa sta confondendo me è che il CSS 2.1 specification for width dice,

Questa proprietà specifica la larghezza del contenuto di scatole generati da elementi a livello di blocco e sostituiti. Questa proprietà non si applica agli elementi inline non sostituiti .

Ho pensato che una textarea è un elemento a livello di linea, perché ad es. markup come questo ...

<p> 
This is some more text: 
<textarea name="mytextarea" rows="3" cols="15">Text in the text area</textarea> 
And even more, more text. 
</p> 

... crea un unico blocco di paragrafo con testo a sinistra ea destra del <textarea>, e che quindi secondo le specifiche la larghezza non dovrebbe essere applicabile.

risposta

6

Textarea è un elemento di livello inline ... a sostituito elemento in linea (si ottiene un controllo di modulo, non il semplice contenuto dell'elemento).

La specifica esclude elementi inline non sostituiti, ma textarea non è uno di questi.

+0

Grazie. – ChrisW

-1

si dovrebbe usare la proprietà 'cols' per impostare la larghezza della textarea.

http://www.w3schools.com/TAGS/tag_textarea.asp

+2

No. Dovresti specificare il numero di colonne, ma se vuoi davvero impostare la larghezza di quella CSS è molto più flessibile. (E evitare W3Schools, è soggetto a errori). – Quentin

+0

Yuck, W3Schools –

0

larghezza non è un attributo accettabile dell'elemento textarea. La dimensione di una textarea può essere specificata dagli attributi cols e rows, sebbene possa essere meglio controllata attraverso le proprietà di altezza e larghezza CSS.