テキストエリアのサイズ変更をオフにする


117

私のサイトでtextareaのサイズ変更をオフにしようとしています。現在、私はこの方法を使用しています:

.textarea {
    clear:left;
    min-width: 267px;
    max-width: 267px;
    min-height:150px;
    max-height:150px;
}

私の方法は正しくないことがわかっているので、JavaScriptでより良い方法を探しています。私は初心者なので、HTML5またはjQueryが最適です。

回答:


253

このCSSを試して、サイズ変更を無効にしてください

すべてのテキストエリアのサイズ変更を無効にするCSSは次のようになります。

textarea {
    resize: none;
}

代わりに、名前で単一のtextareaに割り当てることができます(textarea HTMLは):

textarea[name=foo] {
    resize: none;
}

またはid(textarea HTMLが存在する場合):

#foo {
    resize: none;
}

取得元:http : //www.electrictoolbox.com/disable-textarea-resizing-safari-chrome/


7
ソリューションにリンクするだけでなく、ここで少し説明する必要があります。将来この質問を見ている他の多くの人は、回答のリンクをクリックする気になりません。ここに詳細を追加してください。回答を+1します。
Jon Egeland 2012



2

htmlのドラッグ可能な属性を使用するだけで簡単にできます

<textarea name="mytextarea" draggable="false"></textarea>

デフォルト値はtrueです。


2
問題は、ドラッグアンドドロップではなく、テキスト領域のサイズ変更についてです。したがって、予想どおり、この属性をtextareaに設定しても、Chromeではうまくいきません。
peveuve

2

アプリケーションのすべてのテキストエリアのデフォルトの動作を元に戻したい場合は、CSSに次のオプションを追加できます。

textarea:not([resize="true"]) {
  resize: none !important;
}

次の操作を行って、サイズを変更する場所を有効にします。

<textarea resize="true"></textarea>

このソリューションは、サポートしたいすべてのブラウザーで機能しない可能性があることに注意してください。resizeここでサポートのリストを確認できます:http : //caniuse.com/#feat=css-resize


1

質問に従って、私は答えをjavascriptにリストしました

TagNameを選択して

document.getElementsByTagName('textarea')[0].style.resize = "none";

Idを選択して

document.getElementById('textArea').style.resize = "none";

0
//CSS:
.textarea {
    resize: none;
    min-width: //-> Integer number of pixels
    min-height: //-> Integer number of pixels
    max-width: //-> min-width
    max-height: //-> min-height
}

上記のコードはほとんどのブラウザで動作します

//HTML:
<textarea id='textarea' draggable='false'></textarea>

最大数のブラウザーで機能するように両方を実行する


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.