textareaが自動的に縦に伸び縮みするJavascript
textareaに入力した文字が増えた時に自動的に縦に伸びるコードはcssだけでは実現できないらしく、Javascriptが必要らしい。その為のコードをGeminiに教わったのだけど、外側にdivの枠があると、そのdivの高さを超えた場合にtextareaのスクロールバーだけでなく、その外側にdivのスクロールバーが現れて、見た目が悪いだけでなく使いにくくなる。そこで、Javascriptでtextareaが overflow:hidden; になるようにする。cssで overflow:hidden;にすると、Javascriptが無効な場合にスクロールバーが現れなくなるのでダメだそうだ。 実験用のコードは次の通り。 <div style="width:300px; height:100%; overflow:auto; border:1px solid;"> <textarea id="autoResizeTextarea" style="resize:none; width:100%; min-height:100px; overflow:auto; "> 123456789012345678901234567890 </textarea> </div> <script> document.addEventListener('DOMContentLoaded', () => { const textarea = document.getElementById('autoResizeTextarea'); const minHeight = 100; // CSSのmin-heightと合わせる textarea.style.overflow = 'hidden'; // textareaにスクロールバーが表示されないようにする function adjustHeight() { // textareaの文字が減った場合にサイズを縮める textarea.sty...