Rumah  >  Artikel  >  hujung hadapan web  >  Bolehkah Anda Laraskan Ketinggian Textarea Secara Dinamik dengan Hanya CSS?

Bolehkah Anda Laraskan Ketinggian Textarea Secara Dinamik dengan Hanya CSS?

Susan Sarandon
Susan Sarandonasal
2024-10-29 08:28:021101semak imbas

Can You Dynamically Adjust Textarea Height with Just CSS?

Ketinggian Textarea Dinamik dengan CSS

Apabila mencipta kawasan teks untuk input pengguna, selalunya wajar untuk mengembang atau mengecut untuk menampung jumlah kandungan. Walaupun penyelesaian yang melibatkan JavaScript atau PHP wujud, adakah terdapat kaedah berasaskan CSS semata-mata?

Penyelesaian:

Ya, adalah mungkin untuk menggunakan CSS untuk mencapai kawasan teks dinamik ketinggian. Begini caranya:

  1. Tetapkan ketinggian awal kepada auto: Untuk membenarkan kawasan teks membesar atau mengecut mengikut keperluan, tetapkan ketinggian awalnya kepada "auto":
textarea {
  height: auto;
}
  1. Gunakan Acara 'oninput': Untuk melaraskan ketinggian kawasan teks secara dinamik, lampirkan pengendali acara 'oninput' padanya:
<textarea oninput='this.style.height = "";this.style.height = this.scrollHeight + "px"'></textarea>
  1. Tetapkan Semula Ketinggian Dahulu: Sebelum menetapkan ketinggian berdasarkan kandungan, mula-mula tetapkan semula kepada rentetan kosong. Ini memastikan kawasan teks boleh mengecut serta mengembang.
  2. Kira Ketinggian Sebenar: Tentukan ketinggian sebenar kawasan teks berdasarkan kandungannya yang ditatal dan tambahkannya sebagai piksel pada sifat 'ketinggian' .

Dengan melaksanakan langkah-langkah ini, anda boleh mencipta kawasan teks yang akan melaraskan ketinggiannya secara automatik agar sesuai dengan kandungannya tanpa menggunakan JavaScript atau PHP.

Atas ialah kandungan terperinci Bolehkah Anda Laraskan Ketinggian Textarea Secara Dinamik dengan Hanya CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn