Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie kann ich die Größe von Eingabefeldern basierend auf der Inhaltslänge dynamisch ändern?

Patricia Arquette
Freigeben: 2024-10-29 08:47:30
Original
243 Leute haben es durchsucht

How to Dynamically Resize Input Fields Based on Content Length?

Anpassen der Breite von Eingabefeldern an ihre Eingabe

Problem:Ändern der Breite eines Eingabefelds, um es mithilfe von HTML an seinen Inhalt anzupassen, JavaScript, PHP oder CSS stellen eine Herausforderung dar. Das Attribut „min-width“ ist wirkungslos und feste Breiten können zu einer visuellen Unordnung führen.

Lösung:

Erwägen Sie die Verwendung der ch-Einheit von CSS, die eine von der Schriftart unabhängige Messung darstellt entsprechend der Breite des Nullzeichens. Durch die Bindung einer Größenänderungsfunktion an das Eingabeereignis kann die Breite des Eingabefelds dynamisch angepasst werden:

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

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

Um dies zu ergänzen, wenden Sie die folgenden CSS-Stile an:

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

Dadurch wird sichergestellt Das Eingabefeld passt seine Breite an die Länge seines Inhalts an und behält dabei den gewünschten Abstand und die gewünschte Schriftgröße bei.

Das obige ist der detaillierte Inhalt vonWie kann ich die Größe von Eingabefeldern basierend auf der Inhaltslänge dynamisch ändern?. 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