Universalselektor für Zeichen
ChrisDe
- css
1 Vinzenz Mai0 ChrisDe
1 Daniel.S0 Der Martin0 ChrisDe
Hallo Ihrs,
ich habe eine kleine CSS-Frage, auf welche ich mir keine Antwort "ersuchen/ergooglen" konnte :(
Angenommen ich habe in HTML folgendes:
<div class="item-1">foo</div>
<div class="item-2">bar</div>
Nun stellt sich mir die Frage, ob ich beide mit nur einer CSS-Selektion formatieren kann:
div.item-* {
dings:bums;
}
wobei '*' einen Universalselektor für Zeichenketten darstellt. Gibt es einen solchen Selektor in CSS?
Chris
Hallo,
Angenommen ich habe in HTML folgendes:
<div class="item-1">foo</div>
<div class="item-2">bar</div>
> Nun stellt sich mir die Frage, ob ich beide mit nur einer CSS-Selektion formatieren kann:
CSS3: [Teilübereinstimmung](http://wiki.selfhtml.org/wiki/Doku:CSS/Grundlagen_von_CSS/Ansprechen_von_Elementen_%28Selektoren%29#Teil.C3.BCbereinstimmungen) von Attributwerten.
Freundliche Grüße
Vinzenz
Hey Vinzenz,
CSS3: Teilübereinstimmung von Attributwerten.
Super. Genau das hatte ich gesucht. Ich merke auch gerade, dass ich schon länger nicht mehr im SelfHTML-Raum unterwegs war, denn die Existenz der Wiki ist mir bisher gänzlich entgangen :)
Gruß,
Chris
Grüße dich, ChrisDe,
wobei '*' einen Universalselektor für Zeichenketten darstellt. Gibt es einen solchen Selektor in CSS?
Es gibt die Attributselektoren. Du kannst aber auch darüber nachdenken, ob es nicht sinnvoller ist, den Nachfahrenselektor zu verwenden.
Gruß, Daniel
Hallo,
wobei '*' einen Universalselektor für Zeichenketten darstellt. Gibt es einen solchen Selektor in CSS?
Es gibt die Attributselektoren. Du kannst aber auch darüber nachdenken, ob es nicht sinnvoller ist, den Nachfahrenselektor zu verwenden.
eventuell wäre auch die Vergabe von zwei Klassen für die betroffenen Elemente zu überlegen.
Ciao,
Martin
Hallo,
eventuell wäre auch die Vergabe von zwei Klassen für die betroffenen Elemente zu überlegen.
Ist denn nicht genau das mit item-1, item-2 passiert?
Wundert sich
Kalk
Hi,
eventuell wäre auch die Vergabe von zwei Klassen für die betroffenen Elemente zu überlegen.
Ist denn nicht genau das mit item-1, item-2 passiert?
nein, das ist nur jeweils ein Klassenname. Ich meinte eher sowas wie
<foo class="info wetter">Text</foo>
<foo class="info essen">Text</foo>
<foo class="info wetter">Text</foo>
<foo class="info betten">Text</foo>
So kann ich mit dem Selektor .info alle Elemente erfassen, oder mit .wetter und .essen eine konkrete Gruppe daraus.
Ich gebe aber gern zu, dass die Selektion anhand eines gemeinsamen Vorfahrenelements eleganter ist, wenn die Struktur ein solches hergibt.
Ciao,
Martin
ah, ok, danke.
hättest du "Vergabe von jeweils zwei Klassen" geschrieben, hätte ich es möglicherweise gleich verstanden. Kommunikation ist wohl doch Glücksache...
Gruß
Kalk
Hi Daniel,
danke für deine Antwort.
Nachfahrenselektoren sind immer das Mittel der Wahl für mich. Allerdings war dies in meinem speziellen Fall (dem das einfache Beispiel auch nicht gerecht wurde) leider nicht möglich. Hier nochmal ausführlich:
Es sollten seitenübergreifend nur Tabellen in Klassen angesprochen werden, die mit einer bestimmten Benennung beginnen, also z.B. "item-page" und "item-page-plusx", da "item-page" auf den Typ des Inhaltes verweist. Die Zusätze (-plusx) sind für speziell formatierte Seten, auf welche sich die Tabellenformatierung aber auch auswirken sollte.
Über Sinn und Unsinn dieser Komplexen Struktur lässt sich auf jeden Fall streiten, aber leider geben einem CMS manchmal nur einen arg begrenzten Rahmen einzugreifen und man muss dann kreative Lösungen mit CSS austüfteln.
Im Post von Vinzenz habe ich dann auch die Lösung gefunden.
Gruß,
Chris