Leichte automatische Steuerelemente mit dem HTML5 -Datalisten
Feb 10, 2025 pm 03:18 PM
In diesem Tutorial werden wir ein tiefes Tauchgang in das wenig verwendete HTML5
Key Takeaways
- Das HTML5 `
- Im Gegensatz zu `
- Browserunterstützung für `
- Das Element `
- Verbesserungen wie AJAX k?nnen in "
Was ist los mit
html5
- Es gibt viele Optionen, wie L?nder oder Jobtitel
- Der Benutzer m?chte seine eigene Option eingeben, die nicht in der Liste steht
Die offensichtliche L?sung ist eine automatische Kontrolle. Auf diese Weise kann der Benutzer einige Zeichen eingeben, was die für eine schnellere Auswahl verfügbaren Optionen einschr?nkt.
Entwickler wenden sich h?ufig an eine der vielen JavaScript-L?sungen, aber eine benutzerdefinierte automatische Kontrolle ist nicht immer erforderlich. Das HTML5
Ihr Land aus einer Liste mit mehr als 200 Optionen ausw?hlen, ist ein idealer Kandidat für eine automatische Kontrolle. Definieren Sie a
<span><span><span><datalist</span> id<span>="countrydata"</span>></span> </span> <span><span><span><option</span>></span>Afghanistan<span><span></option</span>></span> </span> <span><span><span><option</span>></span>?land Islands<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Albania<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Algeria<span><span></option</span>></span> </span> <span><span><span><option</span>></span>American Samoa<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Andorra<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Angola<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Anguilla<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Antarctica<span><span></option</span>></span> </span> ...etc... <span><span><span></datalist</span>></span> </span>
Die ID des Datalists kann dann durch ein Listenattribut in jedem Feld
<span><span><span><label</span> for<span>="country"</span>></span>country<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="text"</span> </span></span><span> <span>list<span>="countrydata"</span> </span></span><span> <span>id<span>="country"</span> name<span>="country"</span> </span></span><span> <span>size<span>="50"</span> </span></span><span> <span>autocomplete<span>="off"</span> /></span> </span>
verwirrend ist es am besten, autocomplete = "off" festzulegen. Dies stellt sicher
Das Ergebnis:
Dies ist das Standard -Rendering in Microsoft Edge. Andere Anwendungen implementieren ?hnliche Funktionen, aber das Aussehen unterscheidet sich über Plattformen und Browser hinweg.
Verwenden des Etiketts als Textkind einer
<span><span><span><datalist</span> id<span>="countrydata"</span>></span> </span> <span><span><span><option</span>></span>Afghanistan<span><span></option</span>></span> </span> <span><span><span><option</span>></span>?land Islands<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Albania<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Algeria<span><span></option</span>></span> </span> <span><span><span><option</span>></span>American Samoa<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Andorra<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Angola<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Anguilla<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Antarctica<span><span></option</span>></span> </span> ...etc... <span><span><span></datalist</span>></span> </span>
Die Verwendung eines Wertattributs erzeugt identische Ergebnisse:
<span><span><span><label</span> for<span>="country"</span>></span>country<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="text"</span> </span></span><span> <span>list<span>="countrydata"</span> </span></span><span> <span>id<span>="country"</span> name<span>="country"</span> </span></span><span> <span>size<span>="50"</span> </span></span><span> <span>autocomplete<span>="off"</span> /></span> </span>
Hinweis: Der Schlie? /> Schr?gstrich ist in HTML5 optional, obwohl er dazu beitragen k?nnte, Codierungsfehler zu verhindern.
Sie k?nnen auch einen Wert gem?? einer ausgew?hlten Etikett mit einem der folgenden Formate festlegen.
Option 1:
<span><span><span><datalist</span> id<span>="mylist"</span>></span> </span> <span><span><span><option</span>></span>label one<span><span></option</span>></span> </span> <span><span><span><option</span>></span>label two<span><span></option</span>></span> </span> <span><span><span><option</span>></span>label three<span><span></option</span>></span> </span><span><span><span></datalist</span>></span> </span>
Option 2:
<span><span><span><datalist</span> id<span>="mylist"</span>></span> </span> <span><span><span><option</span> value<span>="label one"</span> /></span> </span> <span><span><span><option</span> value<span>="label two"</span> /></span> </span> <span><span><span><option</span> value<span>="label three"</span> /></span> </span><span><span><span></datalist</span>></span> </span>
In beiden F?llen ist das Eingangsfeld auf 1, 2 oder 3 eingestellt, wenn eine gültige Option ausgew?hlt wird, die Benutzeroberfl?che variiert jedoch über Browser:
- Chrome zeigt eine Liste mit dem Wert und dem Etikett. Nur der Wert bleibt, sobald eine Option ausgew?hlt ist.
- Firefox zeigt nur eine Liste mit dem Etikett. Es wechselt auf den Wert, sobald eine Option ausgew?hlt ist.
- Kante zeigt nur den Wert.
Das folgende CodePen -Beispiel zeigt alle Variationen:
Siehe den Stift
html5
Implementierungen werden sich entwickeln, aber ich würde vorerst empfehlen, keinen Wert und Kennzeichnung zu verwenden, da es wahrscheinlich die Benutzer verwirren. (Eine Problemumgehung wird unten er?rtert.)
Das Element
gut unterstützt.
Es gibt mehrere Implementierungsnotizen, aber sie beeinflussen keinen Einfluss auf die meisten Nutzungen. Das Schlimmste, was passieren k?nnte, ist, dass ein Feld zu einer Standardtexteingabe zurückkehrt.
Wenn Sie IE9 und unten unbedingt unterstützen müssen, gibt es ein Fallback -Muster, das in Verbindung mit einer Texteingabe einen Standard
<span><span><span><datalist</span> id<span>="countrydata"</span>></span> </span> <span><span><span><option</span>></span>Afghanistan<span><span></option</span>></span> </span> <span><span><span><option</span>></span>?land Islands<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Albania<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Algeria<span><span></option</span>></span> </span> <span><span><span><option</span>></span>American Samoa<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Andorra<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Angola<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Anguilla<span><span></option</span>></span> </span> <span><span><span><option</span>></span>Antarctica<span><span></option</span>></span> </span> ...etc... <span><span><span></datalist</span>></span> </span>
Siehe den Stift
html5
In modernen Browsern werden die
In IE9 und unten sind sowohl die (sehr langen)
Beide Werte k?nnen in alten IES eingegeben werden. Ihre Bewerbung muss entweder:
- entscheiden Sie, welches am gültigsten ist oder
- Verwenden Sie eine kleine JavaScript -Funktion, um eine zurückzusetzen, wenn das andere ge?ndert wird
Verwenden von
Chrome-basierte Browser k?nnen auch
-
Eine Eingabe mit dem Typ "Datum". Der Benutzer kann aus einer Reihe von Optionen w?hlen, die als YJJJ-MM-DD-Werte definiert sind, aber in seinem Gebietsschemasformat dargestellt werden.
-
Ein Eingang mit der Art der "Farbe". Der Benutzer kann aus einer Auswahl von Farboptionen w?hlen, die als sechsstellige Hex-Werte definiert sind (dreistellige Werte funktionieren nicht).
-
Ein Eingang mit einer Art "Bereich". Der Schieberegler zeigt Zeckenspuren an, obwohl dies nicht eingeschr?nkt ist, welcher Wert eingegeben werden kann.
Siehe den Stift
html5
Wenn Sie jemals Probleme mit einem -Box ausgew?hlt haben, hatten Sie es einfach!
An
Ich hoffe, diese Situation verbessert sich, aber im Moment wird eine L?sung bei MDN vorgeschlagen, die:
- überschreibt das Standard -Browser -Verhalten
- behandelt die
Das obige ist der detaillierte Inhalt vonLeichte automatische Steuerelemente mit dem HTML5 -Datalisten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen





Es gibt drei M?glichkeiten, einen CSS -Laderotator zu erstellen: 1. Verwenden Sie den Basisrotator der Grenzen, um eine einfache Animation durch HTML und CSS zu erreichen. 2. Verwenden Sie einen benutzerdefinierten Rotator mit mehreren Punkten, um den Sprungeffekt durch verschiedene Verz?gerungszeiten zu erreichen. 3. Fügen Sie einen Rotator in die Taste hinzu und wechseln Sie den Klassen über JavaScript, um den Ladestatus anzuzeigen. Jeder Ansatz betont die Bedeutung von Entwurfsdetails wie Farbe, Gr??e, Zug?nglichkeit und Leistungsoptimierung, um die Benutzererfahrung zu verbessern.

Um mit CSS -Browser -Kompatibilit?t und Pr?fixproblemen umzugehen, müssen Sie die Unterschiede im Browser -Support verstehen und Anbieterpr?fixe vernünftigerweise verwenden. 1. Verstehen Sie gemeinsame Probleme wie Flexbox und Grid -Unterstützung, Position: Sticky Invaly und Animationsleistung ist unterschiedlich. 2. überprüfen Sie den Best?tigungsunterstützungsstatus von Caniuse. 3. Verwenden Sie korrekt -webkit-, -moz-, -ms-, -o- und andere Herstellerpr?fixe; 4. Es wird empfohlen, Autoprefixer zu verwenden, um automatisch Pr?fixe hinzuzufügen. 5. Postcss installieren und Browserlist konfigurieren, um den Zielbrowser anzugeben. 6. automatisch die Kompatibilit?t w?hrend des Baus bew?ltigen; 7. Modernizr -Erkennungsmerkmale k?nnen für alte Projekte verwendet werden; 8. Keine Notwendigkeit, die Konsistenz aller Browser zu verfolgen,

ThemaNDiffercesbetweenplay: Inline, Block, Andinline-Blockinhtml/CsSarelayoutBehavior, Spaceusage und Stylingcontrol.1.inlineelementsflowwithtext, Don'tstartonNewlines, Ignorewidth/HeighthThorchingstyhorching-/idelthorchorching/ardaldhordhortaliTalding/ardaldhordelthortex

Durch das Festlegen des von Ihnen besuchten Links k?nnen Sie die Benutzererfahrung verbessern, insbesondere in inhaltsintensiven Websites, um den Benutzern dabei zu helfen, sich besser zu navigieren. 1. Verwenden Sie CSS: Besuchte Pseudoklasse, um den Stil des besuchten Links wie Farb?nderungen zu definieren. 2. Beachten Sie, dass der Browser nur eine ?nderung einiger Attribute aufgrund von Datenschutzbeschr?nkungen erm?glicht. 3. Die Farbauswahl sollte mit dem Gesamtstil koordiniert werden, um abrupte abrupt zu werden. 4. Das mobile Terminal zeigt diesen Effekt m?glicherweise nicht an. Es wird empfohlen, ihn mit anderen visuellen Eingabeaufforderungen wie Icon -Auxiliary -Logos zu kombinieren.

Verwenden Sie das Clip-Pfad-Attribut von CSS, um Elemente in benutzerdefinierte Formen wie Dreiecke, kreisf?rmige Kerben, Polygone usw. zu erregen, ohne sich auf Bilder oder SVGs zu verlassen. Zu den Vorteilen geh?ren: 1.. Unterstützt eine Vielzahl von Grundformen wie Circle, Ellipse, Polygon usw.; 2. reagierende Anpassung und anpassbar an mobile Terminals; 3. Einfach zu animation und kann mit Hover oder JavaScript kombiniert werden, um dynamische Effekte zu erzielen. 4. Es wirkt sich nicht auf den Layoutfluss aus und erfüllt nur den Anzeigebereich. H?ufige Verwendungen sind z. B. kreisf?rmiger Clip-Pfad: Kreis (50pxatcenter) und Dreieck-Clip-Pfad: Polygon (50%0%, 100 0%, 0 0%). Beachten

ThecsspaintingapienablesDynamicimageGenerationIncsSusingjavaScript.1.DevelopersCreateApaintworkletClassClasswithapaint () Methode.2.TheyRegisteritviaRegisterPaint (). 3.TheCustonTfunctionDenusedincsincssproperties ?hnlich von Background-Image.ThisallowsfordyNamicvis

Um reaktionsschnelle Bilder mit CSS zu erstellen, kann es haupts?chlich durch die folgenden Methoden erreicht werden: 1. Verwenden Sie maximale Breite: 100% und H?he: Auto, damit das Bild an die Containerbreite anpasst und gleichzeitig den Anteil beibeh?lt. 2. Verwenden Sie die SRCSet- und Gr??enattribute von HTML, um die an verschiedenen Bildschirme angepassten Bildquellen intelligent zu laden. 3.. Verwenden Sie Objektfit und Objektposition, um die Bildaufbindung und Fokusanzeige zu steuern. Gemeinsam stellen diese Methoden sicher, dass die Bilder auf verschiedenen Ger?ten klar und wundersch?n pr?sentiert werden.

Verschiedene Browser weisen Unterschiede in der CSS -Analyse auf, was zu inkonsistenten Anzeigeeffekten führt, haupts?chlich die Differenzentscheidung, die Berechnung des Boxmodells, die Flexbox- und Raster -Layout -Unterstützung und das inkonsistente Verhalten bestimmter CSS -Attribute. 1. Die Standardstilverarbeitung ist inkonsistent. Die L?sung besteht darin, CSSReset oder Normalize.css zu verwenden, um den anf?nglichen Stil zu vereinen. 2. Die Box -Modellberechnung der alten Version von IE ist unterschiedlich. Es wird empfohlen, eine einheitliche Boxgr??e: Border-Box zu verwenden. 3. Flexbox und Grid führen in Kantenf?llen oder in alten Versionen unterschiedlich ab. Weitere Tests und verwenden Sie Autoprefixer; 4. Einige CSS -Attributverhalten sind inkonsistent. Caniuse muss konsultiert und herabgestuft werden.
