IDs und Klassen sind „Haken“!
Wir brauchen Möglichkeiten, Inhalte in einem HTML/XHTML-Dokument zu beschreiben. Die grundlegenden Elemente wie <h1>, <p> und <ul> erledigen oft die Aufgabe, aber unsere grundlegende Tag-Sammlung deckt nicht jeden möglichen Typ von Seitenelement oder Layout-Auswahl ab. Dafür benötigen wir IDs und Klassen. Zum Beispiel <ul id="nav">, dies gibt uns die Möglichkeit, diese ungeordnete Liste gezielt anzusprechen, sodass wir sie einzigartig für andere ungeordnete Listen auf unserer Seite manipulieren können. Oder wir haben einen Abschnitt auf unserer Seite, der keinen relevanten Tag zur Kennzeichnung hat, z. B. eine Fußzeile, wo wir etwas wie folgt tun könnten: <div id="footer">. Oder vielleicht haben wir in unserer Seitenleiste Boxen, um Inhalte dort auf irgendeine Weise getrennt zu halten: <div class="sidebar-box">.

Diese IDs und Klassen sind die „Haken“, die wir in das Markup einbauen müssen, um an sie heranzukommen. CSS benötigt diese offensichtlich, damit wir Selektoren erstellen und unsere Stile gestalten können, aber auch andere Websprachen wie JavaScript hängen von ihnen ab. Aber was ist der Unterschied zwischen ihnen?
IDs sind einzigartig
- Jedes Element kann nur eine ID haben
- Jede Seite kann nur ein Element mit dieser ID haben
Als ich anfing, mich damit zu beschäftigen, hörte ich immer wieder, dass man IDs nur einmal verwenden sollte, aber Klassen immer wieder verwenden kann. Es ging mir praktisch durch ein Ohr hinein und durch das andere, weil es mir mehr wie eine gute „Faustregel“ vorkam als etwas extrem Wichtiges. Wenn man sich rein auf HTML/CSS konzentriert, kann diese Einstellung bestehen bleiben, weil sie einem dann wirklich keinen Unterschied machen.
Hier ist einer: Ihr Code wird die Validierung nicht bestehen, wenn Sie dieselbe ID für mehr als ein Element verwenden. Validierung sollte uns allen wichtig sein, das allein ist schon ein großer Punkt. Wir werden im weiteren Verlauf noch mehr Gründe für Einzigartigkeit besprechen.
Klassen sind nicht eindeutig
- Sie können dieselbe Klasse auf mehreren Elementen verwenden.
- Sie können mehrere Klassen auf demselben Element verwenden.
Jegliche Styling-Informationen, die auf mehrere Objekte auf einer Seite angewendet werden müssen, sollten mit einer Klasse erfolgen. Nehmen Sie zum Beispiel eine Seite mit mehreren „Widgets“
<div class="widget"></div>
<div class="widget"></div>
<div class="widget"></div>
Sie können nun den Klassennamen „widget“ als Ihren Haken verwenden, um jedem dieser Widgets denselben Satz von Stilen zuzuweisen. Aber was, wenn Sie möchten, dass eines davon größer ist als das andere, aber dennoch alle anderen Attribute gemeinsam hat? Klassen decken Sie dort ab, da Sie mehr als eine Klasse zuweisen können
<div class="widget"></div>
<div class="widget big"></div>
<div class="widget"></div>
Hier ist kein neuer Klassenname erforderlich, weisen Sie einfach eine neue Klasse im Klassenattribut zu. Diese Klassen sind durch Leerzeichen getrennt und die meisten Browser unterstützen beliebig viele davon (tatsächlich eher Tausende, aber weit mehr, als Sie jemals brauchen werden).
Es gibt keine Browser-Standardeinstellungen für ID oder Klasse
Das Hinzufügen eines Klassennamens oder einer ID zu einem Element hat standardmäßig keine Auswirkung auf dieses Element.
Das ist etwas, das mich als Anfänger gestolpert hat. Sie arbeiten an einer Website und stellen fest, dass die Anwendung eines bestimmten Klassennamens ein Problem löst, das Sie haben. Dann springen Sie zu einer anderen Website mit demselben Problem und versuchen, es mit demselben Klassennamen zu lösen, in der Annahme, dass der Klassenname selbst eine magische Eigenschaft hat, nur um festzustellen, dass es nicht funktioniert hat.
Klassen und IDs haben für sich genommen keine Styling-Informationen. Sie erfordern CSS, um sie anzusprechen und Stile anzuwenden.
Barcodes und Seriennummern

Eine gute Analogie hierfür sind vielleicht Barcodes und Seriennummern. Nehmen Sie einen iPod in einem Geschäft. Auf der Verpackung befindet sich ein Barcode. Dies sagt dem Geschäft, was das Produkt ist, sodass das System, wenn es gescannt wird, genau weiß, was das Produkt ist und was es kostet. Es könnte sogar wissen, welche Farbe es hat oder wo es im Geschäft aufbewahrt wurde. Alle iPods desselben Typs haben den exakt gleichen Barcode.
Der iPod wird auch eine Seriennummer haben, die absolut einzigartig für jeden anderen iPod (oder jedes andere Gerät) auf der Welt ist. Die Seriennummer kennt nicht den Preis. Das könnte sie, aber für das Geschäft wäre das keine sehr effiziente Art, diese Daten zu speichern und zu verwenden. Viel einfacher ist es, den Barcode zu verwenden, sodass Sie beispielsweise, wenn sich der Preis ändert, einfach den Preis für diesen Barcode ändern können und nicht jede einzelne Seriennummer in Ihrem System.
Dies ist ähnlich wie bei IDs und Klassen. Informationen, die wiederverwendbar sind, sollten in einer Klasse gespeichert werden, und Informationen, die absolut einzigartig sind, sollten in einer ID gespeichert werden.
IDs haben spezielle Browser-Funktionalität
Klassen haben keine speziellen Fähigkeiten im Browser, aber IDs haben einen sehr wichtigen Trick auf Lager. Das ist der „Hash-Wert“ in der URL. Wenn Sie eine URL wie http://yourdomain.com#comments haben, versucht der Browser, das Element mit der ID „comments“ zu finden und scrollt die Seite automatisch, um dieses Element anzuzeigen. Es ist wichtig zu beachten, dass der Browser jedes Element scrollt, das er benötigt, um dieses Element anzuzeigen. Wenn Sie also etwas Besonderes getan haben, wie z. B. einen scrollbaren DIV-Bereich innerhalb Ihres regulären Bodys, wird auch dieser DIV gescrollt.
Das ist ein wichtiger Grund dafür, warum es wichtig ist, dass IDs absolut eindeutig sind. Damit Ihr Browser weiß, wohin er scrollen soll!
Elemente können BEIDES haben
Nichts hindert Sie daran, sowohl eine ID als auch eine Klasse auf einem einzelnen Element zu haben. Tatsächlich ist es oft eine sehr gute Idee. Nehmen Sie zum Beispiel das Standard-Markup für ein WordPress-Kommentarlistenelement
<li id="comment-27299" class="item">
Es hat eine Klasse, die Sie vielleicht für das Styling aller Kommentare auf der Seite verwenden möchten, aber es hat auch einen eindeutigen ID-Wert (dynamisch von WordPress generiert, glücklicherweise). Dieser ID-Wert ist für direkte Links nützlich. Jetzt kann ich einfach direkt zu einem bestimmten Kommentar auf einer bestimmten Seite verlinken.
CSS ist es egal
In Bezug auf CSS gibt es nichts, was man mit einer ID tun kann, was man nicht mit einer Klasse tun kann und umgekehrt. Ich erinnere mich, als ich gerade CSS lernte und ein Problem hatte, versuchte ich manchmal, durch das Austauschen dieser Werte zu troubleshooten. Nein. CSS ist es egal.
JavaScript ist es wichtig
JavaScript-Entwickler sind wahrscheinlich schon besser mit den Unterschieden zwischen Klassen und IDs vertraut. JavaScript ist darauf angewiesen, dass es auf einer Seite nur ein Element mit einer bestimmten id gibt, sonst wäre die häufig verwendete Funktion getElementById nicht zuverlässig. Wer mit jQuery vertraut ist, weiß, wie einfach es ist, Seiten-Elementen Klassen hinzuzufügen und zu entfernen. Es ist eine native und integrierte Funktion von jQuery. Beachten Sie, dass es keine solche Funktion für IDs gibt. Es liegt nicht in der Verantwortung von JavaScript, diese Werte zu manipulieren, es würde mehr Probleme verursachen, als es wert wäre.
Wenn Sie sie nicht brauchen, verwenden Sie sie nicht
Wie Sie sehen können, sind Klassen und IDs sehr wichtig und wir verlassen uns täglich darauf, um die gewünschte Formatierung und Seitenmanipulation durchzuführen. Sie sollten sie jedoch sparsam und semantisch einsetzen.
Das bedeutet, Dinge wie diese zu vermeiden
<a href="https://css-tricks.de" class="link">CSS-Tricks.com</a>
Wir wissen bereits, dass dieses Element ein Link ist, es ist ein Anker-Element! Kein besonderer Bedarf, hier eine Klasse anzuwenden, da wir bereits Stile über seinen Tag anwenden können.
Vermeiden Sie auch dies
<div id="right-col">
Die ID wird hier passend verwendet, da die Seite wahrscheinlich nur eine einzige rechte Spalte haben wird, aber der Name ist unpassend. Versuchen Sie, den Kontext des Elements zu beschreiben, nicht wo es sich befindet oder wie es aussieht. Eine ID hier von „sidebar“ wäre angemessener.
Mikroformate sind nur spezifische Klassennamen
Denken Sie, dass Mikroformate über Ihren Kopf gehen? Das tun sie nicht! Sie sind nur normale Markups, die standardisierte Klassennamen für die darin enthaltenen Informationen verwenden. Schauen Sie sich eine Standard-vCard an
<div class="vcard">
<a class="fn org url" href="http://www.commerce.net/">CommerceNet</a>
<div class="adr">
<span class="type">Work</span>:
<div class="street-address">169 University Avenue</div>
<span class="locality">Palo Alto</span>,
<abbr class="region" title="California">CA</abbr>
<span class="postal-code">94301</span>
<div class="country-name">USA</div>
</div>
<div class="tel">
<span class="type">Work</span> +1-650-289-4040
</div>
<div class="tel">
<span class="type">Fax</span> +1-650-289-4041
</div>
<div>Email:
<span class="email">[email protected]</span>
</div>
</div>
Schöner Artikel!
Wow, ich hatte keine Ahnung von Anchor-Linking-IDs. Man lernt jeden Tag etwas Neues, schätze ich : ]
Danke.
Schöner Beitrag. Nichts Neues für mich, aber ich mag die Art, wie du alles erklärt und einfach gemacht hast :D
Das war für mich schwer zu verstehen, als ich zum ersten Mal etwas über CSS lernte. Das Beispiel mit den Barcodes vs. Seriennummern hilft sehr! Danke!
getElementById = getElementById.. und das ist nicht JavaScript, das ist DOM ;p
schöner Artikel :P
ha! Ich habe auch gerade bemerkt, dass sich die Anzahl Ihrer RSS-Reader-Nachrichten bei jedem Seitenrefresh ändert! Das ist cool – wie hast du das gemacht?
Toller Artikel.
Ich hatte ein vages Verständnis von Mikroformaten, wusste aber nicht, dass sie nur spezifische Klassennamen sind – danke!
Schöner Artikel, Chris!
Tolle Veröffentlichung. Perfektes Einführung und Auffrischung. Danke.
Schöner Artikel. Selbst für uns erfahrene Entwickler können einige dieser grundlegenden Erinnerungen erfrischend sein. Und es tröstet mich auch zu wissen, dass ich gelegentlich über einfache Dinge bloggen kann.
Nur ein kleiner Punkt zur Verwendung von ID und CLASS im selben Tag: Ich finde dies eine sehr nützliche Technik, wenn Sie Standardstile unter allen Umständen auf ein Element anwenden möchten (über die ID), aber dessen Farbe oder Hintergrundbild dynamisch (über den Klassenwert) auf verschiedenen Seiten ändern möchten. Allerdings ist mir aufgefallen, dass diese Methode in IE6 Probleme zu verursachen scheint, daher neige ich dazu, sie zu meiden. Hat jemand anderes dieses Problem gehabt? Ich bin sicher, dass es in der CSS-Referenz von Sitepoint dokumentiert ist, aber ich wollte es nur erwähnen.
Toller Artikel. Ich erinnere mich, als ich anfing, habe ich alles mit ID gemacht, weil ich besessen davon war, alles mit der geringstmöglichen Anzahl von Zeichen zu machen.
Ausgezeichneter Artikel! Ich denke, die Art und Weise, wie Sie die Sache erklärt haben, wird Anfängern helfen, diesen Unterschied zwischen IDs und Klassen zu verstehen.
Praktischer Artikel. Danke, Chris!
Wie immer ein toller Artikel, Chris!
Was Mikroformate angeht: Ich wünschte, es gäbe eine Möglichkeit, E-Mail-Informationen zu teilen, ohne sich Spammern auszusetzen. Mikroformate sind großartig für den Austausch anderer persönlicher/geschäftlicher Informationen, aber E-Mails offen liegen zu lassen, ist einfach eine Einladung zu einem endlosen Ansturm von V1agra-Angeboten. Eine von mir verwendete Umgehungslösung – ich bin mir nicht sicher, wie effektiv sie ist – ist die Verwendung der URL des Kontaktformulars meiner Website. Nicht so direkt wie eine E-Mail, aber vielleicht besser als nichts...
CSS ist tatsächlich wichtig, da IDs eine viel höhere Spezifität haben als Klassen. Dies muss offensichtlich berücksichtigt werden, in Bezug darauf, welche CSS-Regeln sich in einem bestimmten Satz von Stylesheets überschreiben werden. Ich weiß, dass dies nicht das ist, was Sie im CSS-Abschnitt impliziert haben, aber es ist erwähnenswert.
Das ist eine großartige Analogie mit Barcodes und Seriennummern. Ed Eliot (Kommentar 15) bringt einen guten Punkt.
Vielen Dank Chris, ein weiteres Thema gut erklärt und leicht verständlich!
Bitte bringen Sie diese „Grundlagen“ weiterhin heraus, sie sind für uns Anfänger soooo nützlich.
Nic
Toller Artikel Chris.
Und jetzt zur großen Noob-Frage;
Was ist eine vcard?
Sie sollten eine Umfrage darüber machen, wie lange es gedauert hat, bis die Leute herausfanden, dass man mehrere Klassen haben kann… Es hat mich einige Jahre gekostet. Keine der Seiten, die ich besuchte, erwähnte das, und ich bemerkte es nie, wenn ich den Code anderer Websites betrachtete. Vielleicht habe ich HTML und CSS einfach selbst beigebracht.
Ich möchte Ed's Punkt (in Beitrag 15, oben) bekräftigen, dass CSS in der Tat einen Unterschied zwischen IDs und Klassen macht, weil eine ID immer eine höhere Spezifität hat als eine Klasse.
Das bedeutet, dass, wenn Sie separate ID- und klassenbasierte Stildeklarationen haben, die beide dieselbe Eigenschaft für dasselbe HTML-Element deklarieren, der Wert vom ID-Selektor angewendet wird.
Spezifitätskonflikte sind wahrscheinlich eine der größten Fallen für junge CSS-Spieler, daher ist es ratsam, bei der Sprachwahl in diesem Bereich vorsichtig zu sein.
Wieder einmal ein großartiger Beitrag hier.. vielen Dank, dass Sie diese großartige Ressource kostenlos zur Verfügung stellen. Sie sind großartig. Ich kann den nächsten Beitrag zur WordPress-Serie kaum erwarten, da ich gerade dabei bin, meine Portfolio-Website neu zu gestalten und sie mit WordPress zu betreiben.
danke
Tom
Nein, „secondaryContent“ wäre angemessener, da Sidebar immer noch eine präsentationelle Beschreibung ist. Im Kontext von HTML ist es keine Sidebar, es kommt höchstwahrscheinlich nach mainContent. Natürlich kann es sich in einer anderen Position innerhalb des HTML befinden und nicht sekundär sein, aber die Idee ist, IDs und Klassen kontextbeschreibend zu halten.
Pingback http://designz-web.blogspot.com/
Es war lustig, über die Barcodes und Seriennummern zu lesen =)
Persönlich bevorzuge ich die Verwendung von Klassen für mein CSS und lasse IDs für JavaScript übrig.
Danke für einen unterhaltsamen Artikel.
Vielen Dank für den Artikel. Als CSS-Anfänger fand ich ihn sehr nützlich!
Es ist lustig… als ich mit CSS anfing, war ich auch verwirrt über die Unterschiede zwischen IDs und Klassen. Ich konnte tatsächlich keine Informationen darüber finden, da es als so grundlegende Sache gilt, dass niemand sie wirklich erklärt! Ich konnte viele Tutorials und Beispielcode finden, aber sie würden immer nur eine ID oder eine Klasse verwenden und nie erklären, WARUM sie verwendet wurde. Es hat also tatsächlich eine ganze Weile gedauert, bis ich es selbst herausgefunden habe.
Der Schlüssel, mit dem ich mich immer wieder verwirrte, ist dieser: Es gibt KEINE stilistischen Unterschiede zwischen einer ID und einer Klasse. Die einzigen Unterschiede liegen in ihrer Verwendung, nicht in der Art und Weise, wie der Browser sie anzeigt. Sobald ich das erkannte, wurde alles andere viel einfacher.
Ich wünschte wirklich, jemand hätte vor Jahren einen Artikel wie diesen geschrieben! Hätte mir viel Frustration erspart :-P
Toller Artikel, danke für die hilfreichen Informationen.
Toller Artikel, ich war mir da lange unsicher, danke fürs Posten! Da jemand hier heruntergescrollt hat, wollen wir uns diese IDs zunutze machen!
https://css-tricks.de/the-difference-between-id-and-class#blog
Ich liebe deine Anekdoten darüber, was du dachtest, als du gelernt hast. Wie der Klassenname, der magisch ist… eine gute Art, Noobs zu beruhigen!
Ich bin mit Dan einer Meinung, es hat ein paar Jahre gedauert, bis ich herausgefunden habe, dass man einem Element zwei Klassen hinzufügen kann. Es ist eine so nützliche Funktion! Ich glaube, ich habe erst kürzlich erfahren, dass nur ein Element auf der Seite eine bestimmte ID haben sollte. Ich schätze, Seiten rendern immer noch, wenn man mehrere hat, oder? Vielleicht hatte ich durch einen glücklichen Zufall nie doppelte ID-Elemente.
Ich hatte auch noch nie davon gehört, Elemente nach ihrem Inhalt zu benennen. Ich dachte einfach, man nennt sie so, dass sie für einen selbst Sinn ergeben.
Ich habe noch nie gehört, dass CSS die ID mehr Gewicht oder Spezifität als die Klasse gibt, wie die Leute in den Kommentaren gesagt haben. Ich habe nicht wirklich verstanden, was sie meinten, also habe ich einen kurzen Test gemacht. Wenn ein Div mit einer ID und spezifizierter Farbe auch eine Klasse mit spezifizierter Farbe hat, hat die Klassenfarbe keine Auswirkung auf den Text im Div.
Danke, dass Sie das erwähnt haben, Leute! Ziemlich nützliche Informationen, denn ich dachte immer, die CSS-Hierarchie basiere rein auf der Reihenfolge.
Eine Sache, die Sie vergessen haben zu erwähnen: Ein Element kann nur eine ID haben, aber es kann mehrere Klassen haben. ist perfekt gültig, und es erbt die CSS-Regeln für alle 3 benannten Klassen (außer in IE6, aber was funktioniert in IE6 überhaupt richtig?)
Gordon, siehe die Abschnitte mit den Titeln IDs are unique und Classes are not unique, ich bezweifle, dass diese Fakten noch klarer sein könnten. ;)
Danke für einen sehr interessanten und gut dokumentierten Artikel.
Ich weiß, dass der Versuch, mein CSS- und HTML-Wissensniveau zu verbessern, nicht einfach ist, aber Sie sind erfolgreich!!
Machen Sie weiter so und danke!
Jean aus Frankreich
Chris,
Sie sind der Beste. Danke für den Artikel, ich habe viel gelernt. Ich habe auch eine Weile lang Klassen für IDs vertauscht, weil ich dachte, das würde einen Unterschied machen.
Tatsächlich ist CSS wichtig, wenn Sie eine ID oder eine Klasse verwenden. In der Kaskade eines Stylesheets hat eine ID mehr Gewicht als eine Klasse. Das bedeutet, wenn sowohl eine Klasse als auch eine ID versuchen, dieselbe Eigenschaft zu ändern, wird die ID (sollte) immer gewinnen.
Gegeben dieses CSS
#mysample{
color : red;
}
.mysample2{
color: black;
font-weight:bold;
}
Wenn sowohl die Klasse als auch die ID demselben Element zugewiesen werden, ist die Farbe Rot. Nur das Schriftgewicht des Klassenselektors wird von der Klasse übernommen, da es nicht von der ID angegeben wurde.
Kurze Frage: Was ist der Unterschied zwischen diesen Anweisungen?
@Mark: Nicht viel, nur ein zusätzlicher „Punkt“ an Spezifität für den, der mit div beginnt. Manchmal hilft es auch bei der Organisation.
Es ist nicht nur ein zusätzlicher Punkt. Der Unterschied besteht darin, dass der erste überall im HTML-Code angewendet werden kann. Der andere kann nur auf div-Elemente angewendet werden.
Das stimmt.
IDs stehen über CLASSES
Danke
Tolle Infos, Mann… Danke!! Ich bin neu hier und hatte ein paar Verwirrungen mit CSS, die jetzt vorbei sind…. Dein Beitrag hat mir wirklich geholfen mit…
Toller Artikel. Danke, Chris!
Ich beginne meine berufliche Laufbahn als UI-Designer und habe den Code so geschrieben, wie er mir einfiel. Aber nach dem Lesen deines Beitrags habe ich den genauen Unterschied zwischen Klasse und ID wirklich verstanden. Die URL mit #id ist wirklich neu für mich. Ich hoffe, ich kann sie verwenden. Vielen Dank.
Grüße
Ramanan Kalirajan
Danke!!! Das brauchte ich :D
Sehr gut geschrieben und erklärt. Vielen Dank – das klärt eine Menge Nebel, der diese Dinge umgab :)
-gowtham
Danke!! Dein Beitrag hat viel dazu beigetragen, meine Zweifel bezüglich des Unterschieds zwischen ID und Klasse zu klären.
Ich gestalte seit Jahren Seiten, auf denen ich denselben div/ID mehrmals auf derselben Seite verwende. Und hatte nie ein Problem, soweit ich weiß. Ich habe mich nie auf ein div bezogen, und abgesehen davon funktioniert es offensichtlich, dieselbe ID mehrmals zu verwenden. Ich werde diese Praxis jedoch ändern. Ich dachte, ich müsste ID mit einem div verwenden und Klasse mit einem Span. So wurde es in dem einzigen "HOW TO"-Buch erklärt, das ich vor Jahren gelesen habe. Es sieht eher so aus: Sie müssen eine ID mit einem div verwenden, können aber Klasse sowohl mit div als auch mit Span verwenden. Tatsächlich habe ich diese Seite gefunden, weil ich danach gesucht habe… vermutend, dass ich mehr über den Unterschied wissen musste.
Mir gefällt besonders der Teil über das Scrollen der Seite mit # in der Adresse. Sehr interessant. Danke
**wie identifiziert man das class-Tag in der CSS-Datei?
Vor 2 Jahren hatte ich diese Frage in einem technischen Test und konnte sie nicht perfekt beantworten :)
Danke. Es ist so ermutigend zu sehen, dass andere mit CSS zu kämpfen hatten. Ich hätte fast aufgegeben, weil ich dachte, ich wäre zu langsam. Jetzt möchte ich weiterlernen.
Entfernen Sie die Apostrophe. Die korrekte Schreibweise ist IDs. Der Apostroph impliziert, dass etwas besessen wird und nicht für reine Pluralformen unter keinen Umständen verwendet wird.
Eigentlich interessiert CSS das. ID-CSS-Eigenschaften überschreiben CLASS-Eigenschaften standardmäßig und ignorieren den CSS-Fluss. Dies bestätigt natürlich nur Ihren Punkt: Verwenden Sie einfach Klassen für das Styling, sonst wird Ihr CSS zu einem Durcheinander von !important-Deklarationen.
Sehr gut erklärt!
Danke für die Erklärung. Ich belege derzeit einen Kurs über Webdesign und im Beispiel hat der Lehrer ID anstelle von Klasse verwendet, aber auf meiner Website hatte ich bereits das Klassenattribut verwendet, um meine divs zu definieren. Es ist gut zu wissen, dass es keinen großen Unterschied zwischen den beiden gibt, damit ich nicht alle meine Klassen in IDs ändern muss. Das wäre viel Code zum Ändern. Nochmals vielen Dank für die Erklärung. Sie wird sehr geschätzt.
gutes Bsp., aber eine Sache ist, dass ID einzigartig ist, d. h. ID wird immer mit Elementen verwendet, bei denen wir nur ein Element in einem Div verwenden müssen. Wie
und Klasse enthält mehrere Divs… wie Klassen in Java.
Ich verwende das Foundation 5 Framework und habe festgestellt, dass Foundation manchmal benutzerdefinierte Formatierungen, die ich in einer Klasse platziere (mit meinem eigenen Klassennamen – nicht überlappend mit Foundation-Namen), ignoriert, aber aus irgendeinem Grund befolgt, wenn ich sie in einer ID platziere. Ich habe mehrere Buttons mit derselben ID, und es scheint zu funktionieren, um den Button-Text auf Handys fetter zu machen. Obwohl ich denke, dass mehrere Elemente mit derselben ID nicht koscher sind und ich in Zukunft einige Probleme haben könnte.
IDs scheinen jedenfalls eine Möglichkeit zu sein, ein Framework anzupassen, das auf seinen eigenen Stilentscheidungen beharrt.
Hervorragende Erklärungen und Analogien. Danke dafür.
Warum verwenden wir dann IDs? Ich meine, wir können einem bestimmten Element Eigenschaften wie Schriftstil usw. usw. direkt in HTML zuweisen. Warum also CSS verwenden? Hat CSS Vorteile bei IDs?
Chris, das ist ein ausgezeichneter Beitrag. Danke.
Ihre Codeformatierung sieht elegant aus, verwenden Sie ein WP-Plugin oder ist es handcodiert?
CSS kümmert sich! (IDs haben Vorrang vor Klassen.)
Es ist völlig an mir vorbeigegangen. Ich verstehe es überhaupt nicht.
ZUR INFO
Im dritten Absatz des Abschnitts *Barcodes und Seriennummern* ist das Wort „reusable“ falsch geschrieben.
Auch im zweiten Absatz von *Klassen sind NICHT eindeutig* haben Sie „other“ zweimal hintereinander geschrieben.
Aber trotzdem ein guter Artikel!
Danke, das Problem wurde behoben.