Ich habe diese Divs, mit denen ich style .tocolor
, aber ich brauche auch die eindeutige Kennung 1,2,3,4 usw., also füge ich hinzu, dass es sich um eine andere Klasse handelt tocolor-1
.
<div class="tocolor tocolor-1"> tocolor 1 </div>
<div class="tocolor tocolor-2"> tocolor 2 </div>
<div class="tocolor tocolor-3"> tocolor 3 </div>
<div class="tocolor tocolor-4"> tocolor 4 </div>
.tocolor{
background: red;
}
Gibt es eine Möglichkeit , nur 1 Klasse haben tocolor-*
. Ich habe versucht, einen Platzhalter *
wie in diesem CSS zu verwenden, aber es hat nicht funktioniert.
.tocolor-*{
background: red;
}
css
css-selectors
wildcard
Twitter
quelle
quelle
Antworten:
Was Sie brauchen, heißt Attributauswahl. Ein Beispiel für die Verwendung Ihrer HTML-Struktur ist das Folgende:
An
div
Ihrer Stelle können Sie ein beliebiges Element hinzufügen oder ganz entfernen, und anclass
Ihrer Stelle können Sie ein beliebiges Attribut des angegebenen Elements hinzufügen.[class^="tocolor-"]
- beginnt mit "tocolor-".[class*=" tocolor-"]
- enthält den Teilstring "tocolor-", der direkt nach einem Leerzeichen steht.Demo: http://jsfiddle.net/K3693/1/
Weitere Informationen zu CSS-Attributselektoren finden Sie hier und hier . Und von MDN Docs MDN Docs
quelle
div[class*="foo"][class="bar"]
?class="foo tocolor-red"
Übereinstimmungen zu gewährleisten , aber nichtclass="foo fromtocolor-red-blue"
Ja das kannst du.
Dadurch werden alle IDs ausgewählt, die mit beginnen
'term-'
.Was den Grund betrifft, warum ich dies nicht tue, sehe ich, wo es vorzuziehen wäre, diesen Weg zu wählen; Was den Stil betrifft, würde ich es nicht selbst tun, aber es ist möglich.
quelle
ID
Nachtrag, nicht nur fürclass
.Eine alternative Lösung:
div[class|='tocolor']
stimmt mit Werten des Attributs "class" überein, die mit "tocolor-" beginnen, einschließlich "tocolor-1", "tocolor-2" usw.Beachten Sie, dass dies nicht übereinstimmt
Referenz: https://www.w3.org/TR/css3-selectors/#attribute-representation
quelle
class
Attribut mit einer anderen Klasse beginnt, die nicht mit beginnttocolor
.foo*
, würden Sie tunQLabel[objectName|='foo'] { ... }
Wenn Sie die eindeutige Kennung für die weitere Gestaltung der Divs nicht benötigen und HTML5 verwenden, können Sie versuchen, benutzerdefinierte Datenattribute zu verwenden. Lesen Sie hier weiter oder versuchen Sie eine Google-Suche nach
HTML5 Custom Data Attributes
quelle