2014-02-17 5 views
12

Ist es möglich, :not() mit nth-child zu verwenden? Was ich versuche, ist zum Zentrum ausrichten alle Tabellenspalten außer 2. und 4. SpalteCSS wie Pseudo-Klasse zu verwenden: nicht mit: N-Kind

td:not(:first-child){ 
    text-align:center; 
} 

:

habe ich versucht, so etwas wie dies ohne Erfolg:

td:not(:nth-child(4n)){ 
    text-align:center; 
} 

dies scheint jedoch zu arbeiten. Die Spalten werden dynamisch generiert, um diesen Spalten eine benutzerdefinierte Klasse hinzuzufügen.

+0

Wo ist Ihre HTML-Inhalte? Erstellen Sie [fiddler] (http://jsfiddle.net) atleast –

+0

Ihr ': not (: nth-child (4n))' Selektor funktioniert gut in Chrome: http://jsfiddle.net/v7tBd –

+0

@JamesDonnelly Funktioniert auch in Firefox –

Antwort

19

:not(:nth-child(4n)) erhalten Sie alles, was nicht :nth-child(4n) ist, d.h. alles, was nicht der 4., 8. und so weiter ist. Es wird nicht das 2. Kind ausschließen, da 2 nicht ein Vielfaches von 4.

ist die 2. auszuschließen und 4. Sie müssen entweder eines von:

  • td:not(:nth-child(2n)) wenn Sie weniger als 6 Spalten haben, oder

  • td:not(:nth-child(2)):not(:nth-child(4)) wenn Sie mindestens 6 Spalten haben und nur die 2. und 4. und nicht jede gerade Spalte ausschließen möchten.

Demo

+1

ja es funktioniert, und danke für die 'td: not(): nicht' Tipp. – sakhunzai

+0

War zu spät für die Party, jedenfalls hatte ich mit 'nth-of-type' eine Geige gemacht, aber nach deinem Selector modifiziert, +1 ... –

Verwandte Themen