2016-07-25 6 views
0

Ich habe die folgenden CSS-Klassen-Handles gefunden, die eine aktive Zeile in Datentabellen hervorheben.Änderung des Verknüpfungsstils in Datentabellen

.table > thead > tr > td.active, 
.table > tbody > tr > td.active, 
.table > tfoot > tr > td.active, 
.table > thead > tr > th.active, 
.table > tbody > tr > th.active, 
.table > tfoot > tr > th.active, 
.table > thead > tr.active > td, 
.table > tbody > tr.active > td, 
.table > tfoot > tr.active > td, 
.table > thead > tr.active > th, 
.table > tbody > tr.active > th, 
.table > tfoot > tr.active > th { 
    background-color: #337ab7; 

} 

ein Ergebnis wie das Produzieren:

enter image description here

Die Spalte ganz links ist ein Link, und man kann sehen, wie dies mit meinem Link Styling stört. Derzeit sind Links die Standard-Blau, ich möchte es in Weiß ändern. Ist es möglich, meine Links direkt in dieser Klasse zu stylen?

Bob Rhodes produzierte die richtige Antwort, die daraus resultierte.

.table > tbody > tr.active > td > a {color: white} 

enter image description here

Nochmals vielen Dank.

+1

in Standard CSS können Sie Regeln nicht verschachteln. Wenn Sie jedoch ein bestimmtes Styling für Ihr a-Tag benötigen, können Sie beispielsweise 'tr.active a {color: # 666;}' verwenden. – antoni

+2

Es tut mir leid, aber ich kann nicht genau sehen, wie sich dies auf Ihren Link-Stil auswirkt, weil Sie uns nicht gesagt haben, wie Sie Ihren Link gestalten sollen. Also, würdest du es uns sagen? Aber ja, es ist möglich. Was würdest du gern tun? – BobRodes

+0

BobRodes, ich habe die ursprüngliche Eingabeaufforderung bearbeitet, um zu sagen, dass ich die Verknüpfung beim Markieren als weiß formatieren möchte. –

Antwort

1

Sie benötigen einen Selektor zu erstellen, die größer oder gleich Spezifität (gleich, ob Sie Ihre CSS-Datei unter datatables.css in Ihrer Seite verweisen). Ein nettes Werkzeug, das Sie verwenden können, ist diese CSS specificity calculator.

Ich bin nicht sicher, warum Sie Ihre Verbindung von Blau zu Weiß ändern möchten, da es auf einem sehr hellen Hintergrund ist und schwer zu sehen sein wird. Aber dies wird das tun:

.table > tbody > tr.active > td > a {color: white} 

Nun, eine Sache, die Sie können nicht tun ist, wählen Sie ein td Element basiert auf der Tatsache, dass es einen Link enthält. In CSS gibt es keine Möglichkeit, einen Container basierend auf seinen Inhalten auszuwählen. Sie müssten dem Container eine Klasse hinzufügen und sie auf diese Weise auswählen.

+0

Ich möchte die Verbindung zu Weiß ändern, wenn tr aktiv ist, weil das den dunkelblauen Hintergrund hinterlässt. Dieser Code ist korrekt. Ich habe es in die vorhandene datatables.css hinzugefügt, die falsch war. Ich habe es in ein anderes CSS-Dokument eingefügt, das nach datatables.css geladen wird. –

+0

@BillTudor Danke für die Erklärung. Das macht jetzt vollkommen Sinn. Übrigens, wenn Sie die übliche Unterstreichung auf Ihrem Link haben möchten, dann fügen Sie 'text-decoration: unterstreichen;' zu Ihrem Stil hinzu. – BobRodes

0

Mit diesem Code:

.table > tbody > tr.active a{color: #fff;} 
+1

Dies wird nicht nur aktive Zeilen auswählen, was ich denke, was das OP will. – BobRodes

+0

Um den zukünftigen Lesern klar zu machen, hat das Poster den Code bearbeitet, um '.active' einzuschließen. Es werden jetzt nur aktive Zeilen ausgewählt. – BobRodes