Heim > Web-Frontend > js-Tutorial > Wie passt man die Breite eines Eingabefelds basierend auf seinem Inhalt dynamisch an?

Wie passt man die Breite eines Eingabefelds basierend auf seinem Inhalt dynamisch an?

Barbara Streisand
Freigeben: 2024-10-28 08:10:03
Original
578 Leute haben es durchsucht

How to Dynamically Adjust Input Field Width Based on Its Content?

Eingabefeldbreite an seinen Inhalt anpassen

Beim Versuch, die Mindestbreite eines Eingabefelds mit „min-width“ festzulegen, funktioniert das nicht Funktioniert es nicht wie erwartet, sind alternative Lösungen erforderlich. Eine solche Lösung ist die Verwendung der CSS-Einheit „ch“, die die Breite des Zeichens „0“ in einer bestimmten Schriftart darstellt.

In modernen Browsern kann das folgende CSS verwendet werden:

<code class="css">input {
  font-size: 1.3em;
  padding: 0.5em;
}</code>
Nach dem Login kopieren

Um die Breite des Eingabefelds basierend auf seinem Inhalt anzupassen, kann eine JavaScript-Funktion an das Ereignis „input“ gebunden werden:

<code class="javascript">var input = document.querySelector('input');
input.addEventListener('input', resizeInput);

function resizeInput() {
  this.style.width = this.value.length + "ch";
}</code>
Nach dem Login kopieren

Diese JavaScript-Funktion ändert die Breite des Eingabefelds entsprechend die Länge seines Werts plus 1 „ch“, um die Polsterung zu berücksichtigen. Der Ereignis-Listener stellt sicher, dass die Breite aktualisiert wird, wenn sich der Eingabewert ändert.

Hinweis: Dieser Ansatz ist aufgrund von Browserkompatibilitätsproblemen mit der „ch“-Einheit möglicherweise nicht für alle Szenarios geeignet. Testen Sie Ihren Code immer in verschiedenen Browsern und Betriebssystemen, um die gewünschte Funktionalität sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie passt man die Breite eines Eingabefelds basierend auf seinem Inhalt dynamisch an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage