<textarea>ï¼ææ¬åºåå ç´
åºçº¿
广æ³å¯ç¨
*
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
* æ¤ç¹æ§çæäºé¨åçæ¯æç¨åº¦å¯è½ææä¸åã
<textarea> HTML å
ç´ æ¯ä¸ä¸ªå¤è¡çº¯ææ¬ç¼è¾æ§ä»¶ï¼éç¨äºå
è®¸ç¨æ·è¾å
¥å¤§éèªç±æ ¼å¼ææ¬çåºæ¯ï¼ä¾å¦è¯è®ºæåé¦è¡¨åã
å°è¯ä¸ä¸
<label for="story">Tell us your story:</label>
<textarea id="story" name="story" rows="5" cols="33">
It was a dark and stormy night...
</textarea>
label,
textarea {
font-size: 0.8rem;
letter-spacing: 1px;
}
textarea {
padding: 10px;
max-width: 100%;
line-height: 1.5;
border-radius: 5px;
border: 1px solid #ccc;
box-shadow: 1px 1px 1px #999;
}
label {
display: block;
margin-bottom: 10px;
}
ä¸è¿°ç¤ºä¾å±ç¤ºäº <textarea> çå 个ç¹ç¹ï¼
id屿§å 许<textarea>ä¸<label>å ç´ å ³èï¼ä»¥å®ç°æ éç¢è®¿é®ãname屿§ç¨äºè®¾ç½®è¡¨åæäº¤æ¶åéè³æå¡å¨çæ°æ®é¡¹åç§°ãrowsåcols屿§ç¨äºæå®<textarea>ç精确尺寸ãç±äºä¸åæµè§å¨çé»è®¤å¼å¯è½ææä¸åï¼å æ¤è®¾ç½®è¿ä¸¤ä¸ªå±æ§æå©äºä¿æä¸è´æ§ã- 卿 ç¾é´é»è®¤è¾å
¥çå
容ã
<textarea>䏿¯ævalue屿§ã
<textarea> å
ç´ è¿æ¥å表å <input> ä¸äºå¸¸ç¨å±æ§ï¼ä¾å¦ autocompleteãautofocusãdisabledãplaceholderãreadonly å requiredã
屿§
è¿ä¸ªå ç´ åªå å«å ¨å±å±æ§ã
autocapitalize-
æ§å¶è¾å ¥ææ¬æ¯å¦èªå¨å¤§åãæå ³æ´å¤ä¿¡æ¯ï¼è¯·åé
autocapitalizeå ¨å±å±æ§é¡µé¢ã autocomplete-
æ¤å±æ§æç¤ºæµè§å¨æ¯å¦å¯ä»¥èªå¨å®ææ§ä»¶çå¼ãå¯è½çå¼å æ¬ï¼
offï¼æ¯æ¬¡ä½¿ç¨æ¶ï¼ç¨æ·é½å¿ é¡»æç¡®ä¸ºæ¤å段è¾å ¥å¼ï¼æè ææ¡£æä¾èªå·±çèªå¨å®ææ¹æ³ï¼æµè§å¨ä¸ä¼èªå¨å®ææ¡ç®ãonï¼æµè§å¨å¯ä»¥æ ¹æ®ç¨æ·å¨ä»¥å使ç¨è¿ç¨ä¸è¾å ¥çå¼èªå¨å®æè¯¥å¼ã
妿
<textarea>å ç´ ä¸æªæå®autocomplete屿§ï¼é£ä¹æµè§å¨å°ä½¿ç¨<textarea>å ç´ è¡¨åææè çautocomplete屿§å¼ãè¡¨åææè è¦ä¹æ¯æ¤<textarea>å ç´ æå±ç<form>å ç´ ï¼è¦ä¹æ¯éè¿form屿§æå®å ¶idç表åå ç´ ãæå ³æ´å¤ä¿¡æ¯ï¼è¯·åé<form>ä¸çautocomplete屿§ã autocorrect-
ä¸ä¸ªåç¬¦ä¸²ï¼æç¤ºå¨ç¨æ·ç¼è¾æ¤
textareaæ¶æ¯å¦æ¿æ´»èªå¨æ¼åçº æ£åææ¬æ¿æ¢ï¼å¦ææé ç½®ï¼ãå 许çå¼å æ¬ï¼ autofocus-
æ¤å¸å°å±æ§å¯è®©ä½ æå®å½é¡µé¢å è½½æ¶ï¼è¡¨åæ§ä»¶åºè·åè¾å ¥ç¦ç¹ãææ¡£ä¸åªæä¸ä¸ªä¸è¡¨åç¸å ³çå ç´ å¯ä»¥æå®æ¤å±æ§ã
cols-
ææ¬æ§ä»¶çå¯è§å®½åº¦ï¼ä»¥å¹³åå符宽度为åä½ãè¥å·²æå®ï¼å ¶å¼å¿ é¡»ä¸ºæ£æ´æ°ãè¥æªæå®ï¼é»è®¤å¼ä¸º
20ã dirname-
æ¤å±æ§ç¨äºæç¤ºå ç´ å å®¹çææ¬æ¹åæ§ï¼ç±»ä¼¼äº
<input>å ç´ çdirname屿§ãæå ³æ´å¤ä¿¡æ¯ï¼è¯·åè§dirname屿§ã disabled-
æ¤å¸å°å±æ§è¡¨ç¤ºç¨æ·æ æ³ä¸æ§ä»¶äº¤äºãå¦ææªæå®æ¤å±æ§ï¼æ§ä»¶å°ä»å ¶å å«å ç´ ï¼å¦
<fieldset>ï¼ç»§æ¿è®¾ç½®ï¼å¦æå¨è®¾ç½®disabled屿§æ¶æ²¡æå å«å ç´ ï¼åæ§ä»¶å¤äºå¯ç¨ç¶æã form-
ä¸
<textarea>å ç´ ç¸å ³èç表åå ç´ ï¼å ¶âè¡¨åææè âï¼ãæ¤å±æ§çå¼å¿ é¡»æ¯åä¸ææ¡£ä¸æä¸ªè¡¨åå ç´ çidãå¦ææªæå®æ¤å±æ§ï¼<textarea>å ç´ å¿ é¡»æ¯è¡¨åå ç´ çåä»£ãæ¤å±æ§å è®¸ä½ å°<textarea>å ç´ æ¾ç½®å¨ææ¡£å çä»»ä½ä½ç½®ï¼èä¸ä» ä» æ¯ä½ä¸ºè¡¨åå ç´ çå代ã maxlength-
è¦æ±ç¨æ·è¾å ¥çæå¤§å符串é¿åº¦ï¼ä»¥ UTF-16 ç å è¡¡éï¼ãå¦ææªæå®æ¤å¼ï¼ç¨æ·å¯ä»¥è¾å ¥æ éæ°éçå符ã
minlength-
è¦æ±ç¨æ·è¾å ¥çæå°å符串é¿åº¦ï¼ä»¥ UTF-16 ç å è¡¡éï¼ã
name-
æ§ä»¶çåç§°ã
placeholder-
å¯¹ç¨æ·å ³äºå¯å¨è¯¥æ§ä»¶ä¸è¾å ¥å 容çæç¤ºãå¨å ä½ç¬¦ææ¬å é¨çåè½¦ææ¢è¡ç¬¦å¨æ¸²ææç¤ºæ¶å¿ 须被è§ä¸ºæ¢è¡å¤çã
夿³¨ï¼å ä½ç¬¦ä» åºç¨äºæ¾ç¤ºåºè¾å ¥å°è¡¨åä¸çæ°æ®ç±»å示ä¾ï¼å®ä»¬ä¸è½æ¿ä»£ä¸è¾å ¥åæ®µå ³èçæ£ç¡®
<label>å ç´ ãæå ³è¯¦ç»è¯´æï¼è¯·åé<input>æ ç¾ã readonly-
æ¤å¸å°å±æ§è¡¨ç¤ºç¨æ·æ æ³ä¿®æ¹è¯¥æ§ä»¶çå¼ãä¸
disabled屿§ä¸åï¼readonly屿§ä¸ä¼é»æ¢ç¨æ·ç¹å»æéæ©è¯¥æ§ä»¶ãåªè¯»æ§ä»¶çå¼ä»é表åä¸èµ·æäº¤ã required-
æ¤å±æ§è§å®ç¨æ·å¨æäº¤è¡¨ååå¿ é¡»å¡«åä¸ä¸ªå¼ã
rows-
æ¾ç¤ºæ§ä»¶çæå®çå¯è§ææ¬è¡æ°ï¼å ¶å¼å¿ é¡»ä¸ºæ£æ´æ°ãè¥æªæå®ï¼é»è®¤å¼ä¸º 2ã
spellcheck-
æå®æ¯å¦åºç±åºå±æµè§å¨/æä½ç³»ç»å¯¹
<textarea>è¿è¡æ¼åæ£æ¥ãå¯è½çå¼å æ¬ï¼trueï¼æç¤ºåºå¯¹æ¤å ç´ è¿è¡æ¼ååè¯æ³æ£æ¥ãdefaultï¼æç¤ºå ç´ åºéµå¾ªé»è®¤è¡ä¸ºï¼è¯¥è¡ä¸ºå¯è½åºäºå ¶ç¶å ç´ èªèº«çspellcheckå¼ãfalseï¼æç¤ºä¸åºå¯¹æ¤å ç´ è¿è¡æ¼åæ£æ¥ã
wrap-
æç¤ºæ§ä»¶åºå¦ä½å¯¹è¡¨åæäº¤æ¶çå¼è¿è¡æ¢è¡ãå¯è½çå¼å æ¬ï¼
hardï¼æµè§å¨ä¼èªå¨æå ¥æ¢è¡ç¬¦ï¼CR+LFï¼ï¼ä»¥ç¡®ä¿æ¯ä¸è¡ä¸è¶ è¿æ§ä»¶å®½åº¦ï¼è¦ä½¿æ¤ææçæï¼å¿ é¡»æå®cols屿§ãsoftï¼æµè§å¨ç¡®ä¿è¾å ¥å¼ä¸çæææ¢è¡å为CR+LFä¸å¯¹ï¼ä½ä¸ä¼ä¸ºæ¤å¼æ·»å é¢å¤çæ¢è¡ãoffï¼ç±»ä¼¼äºsoftï¼ä½å¤è§è¡¨ç°ä¸ºwhite-space: preï¼å³è¶ åºcols宽度çä¸ä¼æ¢è¡ï¼æ¤æ¶<textarea>å°åä¸ºæ°´å¹³å¯æ»å¨ã
è¥æªæå®æ¤å±æ§ï¼åå ¶é»è®¤å¼ä¸º
softã
ä½¿ç¨ CSS æ ·å¼
<textarea> æ¯ä¸ä¸ªå¯æ¿æ¢å
ç´ ââå®å
·æä¸å
æ
å¾å类似çåºæå°ºå¯¸ãé»è®¤æ
åµä¸ï¼å
¶ display å¼ä¸º inline-blockãä¸å
¶ä»è¡¨åå
ç´ ç¸æ¯ï¼å®çæ ·å¼è®¾è®¡ç¸å¯¹å®¹æï¼å
¶ç模åãåä½ãé
è²æ¹æ¡ç屿§åå¯éè¿å¸¸è§ CSS æ¹å¼è½»æ¾è°æ´ã
æ ·å¼å HTML 表åæä¾äºä¸äºæå
³æ ·å¼å <textarea> å
ç´ çå®ç¨æå·§ã
åºçº¿ä¸ä¸è´
HTML è§èä¸å¹¶æªæç¡®è§å® <textarea> å
ç´ çåºçº¿ä½ç½®ï¼ä¸åæµè§å¨å¯è½ä¼å¯¼è´å°å
¶è®¾ç½®å¨ä¸åçä½ç½®ãå¨ Gecko ä¸ï¼<textarea> çåºçº¿è¢«è®¾å®ä¸ºææ¬å第ä¸è¡çåºçº¿ï¼èå¨å
¶ä»æµè§å¨ä¸ï¼è¯¥åºçº¿å¯è½è¢«è®¾å®ä¸º <textarea> 容å¨åºé¨ã请ä¸è¦å¨å
ç´ ä¸ä½¿ç¨ vertical-align: baseline æ ·å¼ï¼å
¶è¡ä¸ºæ¯ä¸å¯é¢æµçã
æ§å¶ textarea æ¯å¦å¯è°æ´å¤§å°
å¨å¤§å¤æ°æµè§å¨ä¸ï¼<textarea> æ¯å¯è°æ´å¤§å°çââä½ ä¼æ³¨æå°å³ä¸è§çæå¨æï¼å¯ç¨äºæ´æ¹é¡µé¢ä¸å
ç´ ç大å°ãè¿æ¯ç± resize CSS 屿§ââæ§å¶çï¼é»è®¤æ
åµä¸å¯ç¨è°æ´å¤§å°åè½ï¼ä½ä½ å¯ä»¥ä½¿ç¨ resize å¼è®¾ä¸º none æ¾å¼ç¦ç¨ï¼
textarea {
resize: none;
}
ææå¼åæ æå¼çæ ·å¼
å¯ä»¥éè¿ :valid å :invalid ç伪类æ¥é«äº®æ¾ç¤º <textarea> å
ç´ çææåæ æå¼ï¼ä¾å¦ï¼å¨ minlengthãmaxlength æ required 设置çèå´å
åèå´å¤ï¼ãä¾å¦ï¼æ ¹æ®ææ¬åºåææè¿æ¯æ ææ¥è®¾ç½®ä¸åçè¾¹æ¡ï¼
textarea:invalid {
border: 2px dashed red;
}
textarea:valid {
border: 2px solid lime;
}
示ä¾
>åºæ¬ç¤ºä¾
以ä¸ç¤ºä¾å±ç¤ºäºä¸ä¸ªå ·æè®¾å®è¡æ°ååæ°ãä¸äºé»è®¤å 容å CSS æ ·å¼çææ¬åºåï¼è¿äºæ ·å¼éå¶äºç¨æ·å°å ç´ è°æ´å°ºå¯¸å°è¶ è¿ 500px 宽å 130px é«ç尺寸ï¼
<textarea name="textarea" rows="5" cols="15">å¨è¿éåç¹ä»ä¹</textarea>
textarea {
max-height: 130px;
max-width: 500px;
}
ç»æ
使ç¨âminlengthâåâmaxlengthâ示ä¾
æ¤ç¤ºä¾åå«è®¾ç½®äºæå°åæå¤§å符æ°ââåå«ä¸º 10 å 20ãè¯ä¸è¯ççã
<textarea name="textarea" rows="5" cols="30" minlength="10" maxlength="20">
å¨è¿éåç¹ä»ä¹
</textarea>
textarea {
max-height: 130px;
max-width: 500px;
}
ç»æ
请注æï¼minlength å¹¶ä¸è½é»æ¢ç¨æ·å é¤å符ï¼ä½¿å
¶é¿åº¦å°äºæå°å¼ï¼ä½å®ç¡®å®ä¼ä½¿ <textarea> ä¸è¾å
¥ç弿 æãå¦å¤è¯·æ³¨æï¼å³ä½¿è®¾ç½®äº minlength å¼ï¼ä¾å¦ä¸º 3ï¼ï¼ç©ºç <textarea> ä»ç¶è¢«è®¤ä¸ºæ¯ææçï¼é¤éåæ¶è®¾ç½®äº required 屿§ã
使ç¨âå ä½ç¬¦â示ä¾
æ¤ç¤ºä¾è®¾ç½®äºå ä½ç¬¦ã请注æï¼å½ä½ å¼å§å¨æ¡ä¸è¾å ¥æ¶ï¼å®ä¼æ¶å¤±ã
<textarea
name="textarea"
rows="5"
cols="30"
placeholder="è¯è®ºææ¬ã"></textarea>
textarea {
max-height: 130px;
max-width: 500px;
}
ç»æ
夿³¨ï¼å ä½ç¬¦ä»
ç¨äºæ¾ç¤ºåºè¾å
¥è¡¨åçæ°æ®ç±»åï¼å®ä»¬ä¸è½æ¿ä»£ä¸è¾å
¥ç¸å
³çæ£ç¡® <label> å
ç´ ã请åé
<input> æ ç¾äºè§£å®æ´è¯´æã
ç¦ç¨ååªè¯»ææ¬åº
æ¤ç¤ºä¾å±ç¤ºäºä¸¤ä¸ª <textarea>ââä¸ä¸ªæ¯ readonlyï¼å¦ä¸ä¸ªæ¯ disabledãä½ ä¸è½ç¼è¾ä»»ä¸å
ç´ çå
容ï¼ä½ readonly å
ç´ å¯è·å¾ç¦ç¹ä¸å
¶å¼ä¼è¢«æäº¤å°è¡¨åãdisabled å
ç´ çå¼ä¸ä¼è¢«æäº¤ä¸æ æ³è·å¾ç¦ç¹ã
<textarea name="textarea" rows="5" cols="30" readonly>
ææ¯ä¸ä¸ªåªè¯»çææ¬åºã
</textarea>
<textarea name="textarea" rows="5" cols="30" disabled>
ææ¯ä¸ä¸ªç¦ç¨çææ¬åºã
</textarea>
textarea {
display: block;
resize: horizontal;
max-width: 500px;
}
ç»æ
ææ¯æ¦è¦
| å 容åç±» | æµå¼å 容ãçè¯å 容ã交äºå 容ãå¯å举ã坿 è®°ãå¯éç½®åå¯æäº¤ç表åç¸å ³å 容å ç´ ã |
|---|---|
| å 许çå 容 | ææ¬ |
| æ ç¾çç¥ | ä¸å 许ï¼å¼å§æ ç¾åç»ææ ç¾é½ä¸è½çç¥ã |
| å 许çç¶å ç´ | 任使¥åçè¯å 容çå ç´ ã |
| éå«ç ARIA è§è² |
textbox
|
| å 许ç ARIA è§è² | 没æå
许ç role |
| DOM æ¥å£ | HTMLTextAreaElement |
è§è
| è§è |
|---|
| HTML > # the-textarea-element > |
æµè§å¨å ¼å®¹æ§
åè§
- å ¶ä»ä¸è¡¨åç¸å ³çå ç´ ï¼