suchen
HeimWeb-FrontendCSS-TutorialHTML -Datenattributehandbuch

HTML -Datenattributehandbuch

Inhaltsverzeichnis

  1. Einführung
  2. Grammatik
  3. Stil verwenden Datenattribute
  4. Zugriff auf Dateneigenschaften in JavaScript

Einführung

HTML -Elemente können Attribute haben, die für jeden Zweck verwendet werden, von Zugänglichkeitsinformationen bis hin zu Stilsteuerung.

<div aria-label="Names" role="region"></div>

Der nicht nachgewiesene Ansatz besteht darin, Ihre eigenen Eigenschaften zu erstellen oder bestehende Eigenschaften für nicht verwandte Merkmale wieder zu verwenden.

<div highlight="true"></div>
<div width="large"></div>

Es gibt viele schlechte Gründe dafür. Ihr HTML wird ungültig, was möglicherweise keine tatsächlichen negativen Auswirkungen hat, aber dieses warme und unscharfe Gefühl effektiver HTML verliert. Der überzeugendste Grund ist, dass HTML eine sich entwickelnde Sprache ist und nur weil Eigenschaften und Werte, die heute nicht funktionieren, nicht bedeuten, dass sie in Zukunft niemals arbeiten werden.

Die gute Nachricht ist: Sie können Ihre eigenen Eigenschaften erstellen. Sie müssen sie nur mit data-* präfixen und können tun, was Sie wollen!

Grammatik

Es ist sehr bequem, Ihre eigenen HTML -Attribute erstellen zu können und Ihre eigenen Informationen hineinzugeben. Zum Glück können Sie es tun! Dafür werden Datenattribute verwendet. Sie sehen so aus:

<div data-foo=""></div>
<div data-size="large"></div>
  • Datenattribute werden häufig als data-* bezeichnet, da sie sich immer in diesem Format befinden. Die data , dann ein Armaturenbrett - und dann ein anderer Text, den Sie sich vorstellen können.

    Können Sie das Datenattribut allein verwenden?

    <div data=""></div>

    Dies mag keinen Schaden zufügen, aber Sie können die JavaScript -API, die wir später in diesem Handbuch behandeln, nicht erhalten. Sie erstellen tatsächlich Attribute für sich selbst, was entmutigt ist, wie ich in der Einführung erwähnt habe.

    Was sollte nicht mit Datenattributen getan werden

    Speichern Sie Inhalte, die zugänglich sein sollten. Wenn der Inhalt auf der Seite angezeigt oder gelesen werden sollte, stellen Sie sie nicht nur in die Dateneigenschaften ein und stellen Sie sicher, dass sich der Inhalt irgendwo im HTML -Inhalt befindet.

    <div data-name="Chris Coyier"></div>
    <div>
      Chris Coyier
    </div>

    Hier finden Sie weitere Informationen zu versteckten Inhalten.

    Stil verwenden Datenattribute

    CSS kann HTML -Elemente basierend auf Attributen und ihren Werten auswählen.

     /* Wählen Sie jedes Element mit diesem Datenattribut und Wert und Wert*/aus
    [datengröße = "groß"] {
      Polsterung: 2Rem;
      Schriftgröße: 125%;
    }
    /* Sie können es auf ein Element oder eine Klasse oder irgendetwas anderes beschränken*/
    Taste [Data-Type = "Download"] {}
    .Card [data-pad = "extra"] {}

    Dies kann attraktiv sein. Die Haupthaken im Hauptstil in HTML/CSS sind Klassen, und während der Klassen großartig sind (sie haben eine mittlere Spezifität und eine schöne JavaScript -Methode über classList ), haben die Elemente sie entweder oder haben sie (im Grunde genommen an oder aus ). Mit data-* können Sie diese Funktions-/Aus-Funktion sowie die Möglichkeit erhalten, basierend auf ihrem Wert auf derselben Spezifitätsebene auszuwählen.

     / * Wenn die Eigenschaft existiert, wählen Sie */
    [Datengröße] {}
    /* Wählen Sie, ob das Attribut einen bestimmten Wert hat*/
    [Data-state = "Open"],
    [aria-expanded = "true"] {}
    / * "Starten Sie mit ..." Selektor, was bedeutet, dass dies mit "3" oder einem beliebigen Zeichen mit 3 übereinstimmt, z. B. "3.14" */
    [Data-Version^= "3"] {}
    / * "Integrieren" bedeutet, wenn der Wert die Zeichenfolge überall enthält */
    [Data-company*= "Google"] {}

    Spezifität des Attributauswählers

    Es ist genau das gleiche wie die Klasse. Wir betrachten die Spezifität normalerweise als vierteiliger Wert:

    Inline -Stil, ID, Klasse/Eigenschaften, Tags

    Daher sind die einzelnen Eigenschaftsauswahler 0, 0, 1, 0 . Selektoren wie diese:

     div.card [data-foo = "bar"] {}

    wird 0, 0, 2, 1 sein. 2 liegt daran, dass es eine Klasse ( .card ) und eine Eigenschaft gibt ( [data-foo="bar"] ), und 1 liegt daran, dass es ein Tag ( div ) gibt.

    Die Spezifität des Attributauswählten ist niedriger als die ID, höher als das Element/Tag, das gleich wie bei der Klasse.

    Fall-unempfindliche Eigenschaftswerte

    Wenn Sie mögliche Fall-Inkonsistenzen in Dateneigenschaften korrigieren müssen, bietet der Eigenschaftsselector dafür eine unempfindliche Variante.

     /* Wird übereinstimmen<div data-state="open"></div>
    <div data-state="Open"></div>
    <div data-state="OPEN"></div>
    <div data-state="oPeN"></div>
    */
    [data-state = "öffnen" i] {}

    Es ist der Kleinbuchstaben i in der Square Bracket Selector.

    Visualisieren Sie Nutzungsdateneigenschaften

    Mit CSS können Sie Datenattributwerte extrahieren und bei Bedarf anzeigen.

     /*<div data-emoji="✅"> */
    [Data-emoji] :: vor {
      Inhalt: Attr (Data-emoji); / * Return '✅' */
      Rand-Rechts: 5px;
    }<h4 id="Beispiel-für-die-Style-Nutzung"> Beispiel für die Style -Nutzung</h4>
    <p> Sie können das Datenattribut verwenden, um die Anzahl der für den Rastercontainer erforderlichen Spalten anzugeben.</p>
    <pre class="brush:php;toolbar:false"><div data-columns="2"></div>
    <div data-columns="3"></div>
    <div data-columns="4"></div>

    Zugriff auf Dateneigenschaften in JavaScript

    Wie jedes andere Attribut können Sie mit der gemeinsamen Methode getAttribute auf den Wert zugreifen.

     Sei Value = El.GetAttribute ("Data-State");
    // Sie können auch den Wert festlegen.
    // return Data-state = "Collapsed"
    El.SetAttribute ("Data-State", "Collaped");

    Datenattribute haben aber auch ihre eigenen speziellen APIs. Angenommen, Sie haben ein Element mit mehreren Datenattributen (dies ist absolut in Ordnung):

    Wenn Ihr Element eine Referenz hat, können Sie die Eigenschaften wie diese festlegen und erhalten:

     // Span.dataset.info; // 123
    span.dataset.index; // 2
    // set span.dataset.prefix = "Mr.";
    span.dataset.emojiicon = "?";

    Beachten Sie die Kamel -Nomenklatur in der letzten Zeile. Es konvertiert automatisch das Attribut im Kebab-Stil in HTML (z. B. data-this-little-piggy ) in die Kamel-Nomenklatur in JavaScript (z. B. dataThisLittlePiggy ).

    Diese API ist wohl nicht so gut wie classList , classList klare Methoden zum Hinzufügen, Löschen, Umschalten und Ersetzen aufweist, aber sie ist besser als nichts.

    Sie können auch Inline -Datensätze zugreifen:

    JSON -Daten in Dateneigenschaften

    
    

    Warum nicht? Es ist nur eine Zeichenfolge, die in gültige JSON (beachten Sie die Zitate usw.). Sie können die Daten extrahieren und nach Bedarf analysieren.

     const el = document.querySelector ("li");
    lass JSON = El.Dataset.person;
    lass Data = json.Parse (JSON);
    console.log (data.name); // Chris Coyier
    console.log (data.job); // Webperson

    JavaScript -Anwendungsfälle

    Das Konzept ist, dass Sie Dateneigenschaften verwenden können, um Informationen in HTML zu setzen, auf die JavaScript möglicherweise zugreifen muss, um bestimmte Vorgänge auszuführen.

    Ein häufiges Beispiel hängt mit der Datenbankfunktionalität zusammen. Angenommen, Sie haben einen "Gefällt mir" -Taste:

    Diese Schaltfläche kann auf Handler klicken, die AJAX -Anforderungen an den Server durchführt, wenn sie auf die Anzahl der Likes in der Datenbank in Erhöhen von Likes in Erhöhen durchführt. Es weiß, welcher Datensatz zu aktualisieren ist, da es von den Dateneigenschaften erhält.

    Spezifikation

    • Auswahlstufe 4 (Arbeitsentwurf)
    • Auswahlstufe 3 (empfohlen)
    • Selektorstufe 2, Revision 1 (erste Definition)

    Browserunterstützung

    Dieser Browser unterstützt Daten von Caniuse, die weitere Details enthält. Die Zahl zeigt an, dass der Browser diese Funktion in dieser und späteren Versionen unterstützt.

    Desktop

    Mobilfunk/Tablet -PC

  • Das obige ist der detaillierte Inhalt vonHTML -Datenattributehandbuch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme
    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
    Verwenden von Seiten CMS für statische Site Content ManagementVerwenden von Seiten CMS für statische Site Content ManagementMay 13, 2025 am 09:24 AM

    Ich weiß, ich weiß: Es gibt eine Menge von Content -Management -Systemoptionen, und während ich mehrere getestet habe, war keiner wirklich derjenige, den Sie wirklich wissen? Seltsame Preismodelle, schwierige Anpassungen, einige werden sogar ein Ganzes &

    Die ultimative Anleitung zum Verknüpfen von CSS -Dateien in HTMLDie ultimative Anleitung zum Verknüpfen von CSS -Dateien in HTMLMay 13, 2025 am 12:02 AM

    Das Verknüpfen von CSS -Dateien mit HTML kann durch die Verwendung von Elementen in einem HTML erreicht werden. 1) Verwenden Sie Tags, um lokale CSS -Dateien zu verknüpfen. 2) Mehrere CSS -Dateien können durch Hinzufügen mehrerer Tags implementiert werden. 3) Externe CSS -Dateien verwenden absolute URL -Links wie z. 4) Stellen Sie die korrekte Verwendung von Dateipfaden und CSS -Dateiladeauftrag sicher und optimieren Sie die Leistung können mit CSS -Präprozessor zusammengeführt werden, um Dateien zu verschmelzen.

    CSS Flexbox vs Grid: Eine umfassende ÜberprüfungCSS Flexbox vs Grid: Eine umfassende ÜberprüfungMay 12, 2025 am 12:01 AM

    Die Auswahl von Flexbox oder Grid hängt von den Layoutanforderungen ab: 1) Flexbox ist für eindimensionale Layouts wie die Navigationsleiste geeignet. 2) Das Gitter eignet sich für zweidimensionale Layouts wie Zeitschriftenlayouts. Die beiden können im Projekt verwendet werden, um den Layout -Effekt zu verbessern.

    So füge CSS -Dateien ein: Methoden und Best PracticesSo füge CSS -Dateien ein: Methoden und Best PracticesMay 11, 2025 am 12:02 AM

    Der beste Weg, um CSS -Dateien einzubeziehen, besteht darin, Tags zu verwenden, um externe CSS -Dateien in den HTML -Teil einzuführen. 1. Verwenden Sie Tags, um externe CSS -Dateien einzuführen, wie z. 2. Für kleine Anpassungen können Inline -CSS verwendet werden, sollten jedoch mit Vorsicht verwendet werden. 3. Große Projekte können CSS -Präprozessoren wie SASS oder weniger verwenden, um andere CSS -Dateien über @import zu importieren. 4. Für die Leistung sollten CSS -Dateien zusammengeführt und CDN verwendet und mit Tools wie CSSNano komprimiert werden.

    Flexbox vs Grid: Soll ich sie beide lernen?Flexbox vs Grid: Soll ich sie beide lernen?May 10, 2025 am 12:01 AM

    Ja, youShouldlearnbothflexBoxandgrid.1) FlexBoxiSidealfore-dimensional, flexibelayoutslikenAvigationMenus.2) GridexcelStwo-dimensional, komplexDesignsuchasmagazinelayouts.3) Kombininierungs-Botenhances-Flexible-und-und -Anteilungskraft, und -forsfossivität,

    Orbitalmechanik (oder wie ich eine CSS -Keyframes -Animation optimiert habe)Orbitalmechanik (oder wie ich eine CSS -Keyframes -Animation optimiert habe)May 09, 2025 am 09:57 AM

    Wie sieht es aus, Ihren eigenen Code neu zu gestalten? John Rhea nimmt eine alte CSS -Animation auseinander, die er geschrieben hat, und geht durch den Denkprozess der Optimierung.

    CSS -Animationen: Ist es schwierig, sie zu erstellen?CSS -Animationen: Ist es schwierig, sie zu erstellen?May 09, 2025 am 12:03 AM

    CsSanimationsarenotinherenthardbutRequirePractICEANDUnDing-fordertofcsPropertiesandTimingfunktionen.1) StartwithsimpleanimationslikescalingabuttononoversKeyFrames.2) useaSingFunctionslikecubic-BezierForteffects, SuchasabouNects, SuchasabouNects,, zu

    @Keyframes CSS: Die am häufigsten verwendeten Tricks@Keyframes CSS: Die am häufigsten verwendeten TricksMay 08, 2025 am 12:13 AM

    @KeyFramesispopulardUeToitSverSatility und PowerIncreatingsmoothcsSanimations.KectrickSinclude: 1) DefiningsmoothTransitionSbetTates, 2) AnimatingMultipleProperTiesimultan, 3) mit VendorprefixesforBrowserCompatible, 4) Kombinieren, 4) Kombinieren, 4) Kombinieren, 4) Kombinieren, 4) Kombinieren

    See all articles

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    Video Face Swap

    Video Face Swap

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

    Heißer Artikel

    Mandragora: Flüstern des Hexenbaum
    3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
    Nordhold: Fusionssystem, erklärt
    3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

    Heiße Werkzeuge

    WebStorm-Mac-Version

    WebStorm-Mac-Version

    Nützliche JavaScript-Entwicklungstools

    EditPlus chinesische Crack-Version

    EditPlus chinesische Crack-Version

    Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

    SecLists

    SecLists

    SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    Herunterladen der Mac-Version des Atom-Editors

    Herunterladen der Mac-Version des Atom-Editors

    Der beliebteste Open-Source-Editor