input和textarea的區(qū)別

都是提供用戶輸入的標(biāo)簽。區(qū)別如下:

  • input 單行文本輸入框 textarea多行文本輸入框
  • input textarea都可以通過width height設(shè)置寬高,textarea還可以通過cols rows來設(shè)置顯示的行數(shù)和列數(shù)
  • input textarea都可以通過maxlength來設(shè)置最多輸入的字符數(shù),input的size是最多展示出來的字符數(shù),類似于textarea的cols屬性
  • input有value屬性,無法自動換行,textarea值是標(biāo)簽對之間,可以自動換行

用一個(gè)div模擬textarea,可以利用塊級元素的contenteditable屬性,代碼如下:

.textarea {
     border: 1px solid #ccc;
    padding: 20px;
    width: 200px;
    min-height: 100px;
    /* 可以設(shè)置一個(gè)最大高度,超出時(shí)滾動,否則,高度會被撐開 */
    /* max-height: 300px; */
    overflow: auto;
}
    
<div class="textarea" contenteditable="true"></div>

這樣子,就可以模擬textarea了,但是這樣設(shè)置,拷貝進(jìn)來的文本支持html,要想過濾掉html,只支持純文本,需要設(shè)置contenteditable:plaintext-only或者設(shè)置webkit-user-modify: read-write-plaintext-only; (user-modify只有webkit內(nèi)核支持)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容