質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

10436閲覧

テキストエリアの高さを、「スクロール」でなく「エリアを自動伸縮」させたい

beer

総合スコア19

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2018/10/10 12:27

テキストエリアで入力に応じて高さ調整する際に、ユーザーが高さ調整できるのではなく、入力に応じて自動で高くなる仕様にしたいです。

例えば下記のように、CSSのresizeを使えばユーザーの高さ調整はなくなりますが、これでは自動で高くなることもありません。

html

1<textarea></textarea> 2<style> 3textarea { resize: none; } 4</style>

そこで下記のように、<textarea>を使うのではなくて、<div>を使えば解決します。ユーザーの高さ調整もできず、同時に自動で高くもできます。

html

1<div contenteditable="true"></div>

しかし今回は、この<div>の方法ではなく、<textarea>のままで自動で高くしたいです。

もしこれができる方がいらっしゃいましたらお知恵をお貸し頂ければと思い致しました。
どうぞ宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

投稿2018/10/10 12:54

miyakichi

総合スコア297

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

beer

2018/10/10 13:03

便利ですね。ありがとうございます。
guest

0

ベストアンサー

ここあたりを参考に書き直します。
と思ったら必要なさそうでした。

CSS

1<style> 2textarea { resize: none; } 3#ta { line-height: 5; } 4</style> 5<textarea id="ta"></textarea> 6<script> 7var ta = document.getElementById("ta"); 8ta.style.lineHeight = "20px";//init 9ta.style.height = "30px";//init 10 11ta.addEventListener("input",function(evt){ 12 if(evt.target.scrollHeight > evt.target.offsetHeight){ 13 evt.target.style.height = evt.target.scrollHeight + "px"; 14 }else{ 15 var height,lineHeight; 16 while (true){ 17 height = Number(evt.target.style.height.split("px")[0]); 18 lineHeight = Number(evt.target.style.lineHeight.split("px")[0]); 19 evt.target.style.height = height - lineHeight + "px"; 20 if(evt.target.scrollHeight > evt.target.offsetHeight){ 21 evt.target.style.height = evt.target.scrollHeight + "px"; 22 break; 23 } 24 } 25 } 26}); 27</script>

投稿2018/10/10 12:46

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

beer

2018/10/10 12:53

どうもありがとうございます。
退会済みユーザー

退会済みユーザー

2018/10/10 12:58

styleのline-heightいりませんでした...
beer

2018/10/10 13:02

何かと思いました。笑
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問