テキストフィールドに、ユーザーのタイプに応じて拡大する自動幅を設定して、親の幅に達するまでドロップダウン(および高さを拡張)する方法を教えてください。
width:autoは何らかの理由で動作しないようです。
ありがとうございました。テキストフィールド幅auto width |まず、行を削除する前に水平スペースを取る
2
A
答えて
0
input
要素ではできないと思っていますが、あなたはそれを騙すことができます。
フォークオンCodepenです。
$(".nice-input").keyup(function(){
if($(`input[nice-rel="${$(this).attr("id")}"]`).length > 0) {
$(`input[nice-rel="${$(this).attr("id")}"]`).val($(this).text());
}
});
.container {
width: 120px;
background-color: #f5f5f5;
border: 1px solid #ededed;
border-radius: 5px;
padding: 20px;
}
.container .input {
font: sans-serif;
display: inline-block;
outline: none;
width: auto;
min-width: 50px;
border-bottom: 1px solid #000;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div class="container">
<span class="input nice-input" id="main" contenteditable="true"></span>
</div>
<input type="text" nice-rel="main" placeholder="Hide this element" disabled/>
0
HTML:
<div class="parent">
<textarea></textarea>
</div>
CSS:
.parent {
width: 300px;
height:300px;
background-color: black;
}
textarea {
width: 110px;
max-width: 100%;
max-height: 100%;
overflow: hidden;
outline: none;
background-color: white;
}
のjQuery:
$("textarea").keypress(function() {
// Increases the length of textarea
$("textarea").css({
'width' : $(this).width() + 10
});
// Increases the height when textarea width reaches maximum length
if ($(this).width() >= $(this).parent().width()) {
$(this).css({
'height' : $(this).height() + 20
})
}
}
これをチェックアウトJSFiddle
ほとんど同じように説明されています。テキスト領域内のコンテンツの幅を決定する方法を誰かが見つけた場合、目標を達成するでしょう。今のところ、あなたたちはこれを踏み台として使うことができます。
関連する問題
- 1. モバイルの水平スクロールバーを削除する
- 2. 水平スクロールバーを削除するには?
- 3. CSSオーバーフロースクロールテーブルセル(幅:autoまたはwidth:100%
- 4. Divすべての水平スペースを取る
- 5. auto scroolを使って1行のテキストテーブルを作成するdivの幅に水平に合わせる
- 6. 水平線を削除する(ggplot2)
- 7. 水平スクロールバーを削除する方法
- 8. 水平スクロールを削除します。
- 9. モバイルで余分な水平空白を削除する(css)
- 10. Html Javascriptのウェブサイトモバイルで水平スクロールを削除する
- 11. 入力グループを水平なスペースに埋める方法は?
- 12. 水平棒グラフ(Chart.js 2)の上部水平線を削除します。
- 13. Facebookブックアプリから水平スクロールバーと垂直スクロールバーを削除する
- 14. 見通しメーラー水平ブラックラインを削除する方法
- 15. Python Plotly、背景の水平線を削除する方法は?
- 16. C#WinForms TreeView水平スクロールバーを削除
- 17. 行からスペースを削除する
- 18. UICollectionViewFlowLayout水平/水平1行
- 19. WPF - 水平スクロールバーthumbの幅
- 20. Chart.js水平バー幅
- 21. PHPStormでこれらの水平線を削除するには?
- 22. 水平メニューからフェード効果を削除するには
- 23. Androidのボトムバーの水平スリムバーを削除するには
- 24. UITableViewスワイプを水平ページスワイプと一緒に削除する方法
- 25. ページ下部の水平バーを削除するには?
- 26. QHeaderViewから水平枠線を削除するには
- 27. 水平センターテーブル行
- 28. リストイメージの周りの水平スペースを削除するにはどうすればよいですか?
- 29. イメージは水平にならず、2行に積み重なる。
- 30. 幅を設定中に水平スクロールバーを表示する:100%
入力を最大幅にするのではなく、どのようなシナリオを使用しますか?要素の幅を100%にするか、[contenteditable](https://www.w3schools.com/tags/att_global_contenteditable.asp)でフォームを作成し、コンテンツをフォーム要素にクローンします。 – Skylark
@OfficialAntarctica入力テキストは、親の幅よりも幅が広くなるとドロップできません。 – Wyatt
'textarea'要素を使うか、下の私の答えを使う↓ – Skylark