XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   (X)HTML (http://xhtmlforum.de/forumdisplay.php?f=72)
-   -   Attribut id oder class? (http://xhtmlforum.de/showthread.php?t=74200)

AndreasB 28.02.2021 02:36

Attribut id oder class?
 
Verwendet ihr das Attribut id in einem Element ausschließlich, wenn ihr via Link darauf verweisen möchtet?

Oder verwendet ihr id auch dann, wenn ihr das nicht tun möchtet, und euch einen Selektor für CSS wünscht?

Oder verwendet ihr, wenn ihr euch einen Selektor wünscht, ausschließlich class?

Eure Sicht dazu interessiert mich.

MrMurphy 28.02.2021 02:46

Ich verwende id nur für Linkziele und Sprungmarken innerhalb von Seiten.

Für CSS-Angaben verwende ich ausschließlich Klassen.

Das CSS wird dadurch übersichtlicher und Probleme, weil id und class verwechselt werden, entfallen. Deshalb enthalten einige Elemente bei mir den gleichen id- und class-Namen.

Früher wurde mal behauptet, dass id besser oder wichtiger als class sind. Das war und ist aber falsch, wie bei vielen Behauptungen im Zusammenhang mit HTML und CSS.

AndreasB 28.02.2021 08:41

Zitat:

Zitat von MrMurphy (Beitrag 554551)
Ich verwende id nur für Linkziele und Sprungmarken innerhalb von Seiten.

Für CSS-Angaben verwende ich ausschließlich Klassen.

Das CSS wird dadurch übersichtlicher und Probleme, weil id und class verwechselt werden, entfallen. Deshalb enthalten einige Elemente bei mir den gleichen id- und class-Namen.

Verstehe ich Dich richtig, dass Du also den ID-Selektor nicht einmal dann im CSS verwendest, wenn eine ID als Sprungmarke (genauer: Fragment-Identifikator in URL) von Dir verwendet wird?

Also nicht:
Code:

HTML: <main id="content"></main>
CSS: #content { ... }

Sondern:
Code:

HTML: <main id="content" class="content"></main>
CSS: .content { ... }


MrMurphy 28.02.2021 10:22

Richtig.

top 01.03.2021 15:18

Eine ID verwende ich in der Regel nur dann wenn ich mir sicher bin, dass das Element später nur einmal pro Seite vorkommen soll. Z.B. die Haupt-Navigation oder das Logo der Seite. (Dem Logo verpasse ich dann gerne mal ein id="top", wenn ich sowieso ein Sprunganker zum Seitenanker brauche.)

Oder auch für Abschnitte, die sich individuell vom Rest der Seite unterscheiden sollen.

Wenn ich also weiß, dass ich nur ein <main> auf der Seite haben will, (und dafür auch keinen Sprunganker brauche,) würde ich es vermutlich so lösen:

Code:

HTML: <main>bla</main>
CSS: main { ... }

;)

inta 01.03.2021 22:43

Zitat:

Zitat von MrMurphy (Beitrag 554551)
Früher wurde mal behauptet, dass id besser oder wichtiger als class sind.

Nicht nur früher und auch nicht nur behauptet, die Spezifität von Ids ist nunmal höher als die von Klassen. Ich würde also sagen, ja die sind ganz klar wichtiger (besser würde ich nicht sagen, das kommt auf den Verwendungszweck an).

Da ich versuche wiederverwendbaren Code zu schreiben, verwende ich fast ausschließlich Klassen, oder gar die blanken Elemente. Insofern ja, in der Regel nutze ich Ids nur als Linkziele oder sonstige eindeutige Identifikationsmerkmale (z.B. für label mit for-Attribut und zugehörigen inputs). Im CSS spreche ich die Ids nur an, wenn es wirklich eine einmalige Abweichung ist.

AndreasB 03.03.2021 07:57

Danke für eure Rückmeldungen.


Ich habe die wenigen bisher noch verwendeten IDs in meinem Markup restlos entfernt, außer denen, die als Sprungmarke dienen.


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:04 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2023