私はtextarea
を特定の最小の高さで持っていて、this articleに基づいて拡張可能にしました。問題は最小の高さになる前に拡大されるので、最初にその高さを埋めるようにしてから展開することです。ここテキストエリアの高さを塗りつぶして展開する方法は?
そして、ここではコードです:
HTML:
<div class="expand js-expand">
<pre><span></span><br></pre>
<textarea></textarea>
</div>
はCSS:
.expand {
max-height: 100px;
overflow: hidden;
width:83%;
min-height: calc(5rem - 0.5rem - 0.5rem);
position: relative;
background-color: #ffffff;
}
.expand textarea,
.expand pre {
white-space: pre-wrap;
word-wrap: break-word;
text-align: left;
width: calc(100% - 0.5rem - 1rem);
min-height: 100%;
padding: 0.5rem 1rem 0.5rem 0.5rem;
}
.expand textarea {
resize: none;
border: none;
position: absolute;
top: 0; left: 0;
overflow: visible;
}
JS:
expandtextarea(document.querySelector('.js-expand'));
function expandtextarea(container) {
var tarea = container.querySelector('textarea');
var mirror = container.querySelector('span');
tarea.addEventListener('input', function(e) {
mirror.textContent = tarea.value;
});
}
textarea
とpre
の要素の最小高さをコンテナdiv
と同じに設定しようとしましたが、物が変更されませんでした。
私はどんな提案もありがとうございます。
が、それは完璧な仕事をありがとう、私はそれが簡単な – user6561572