2010-12-30 20 views
1

Ich habe eine Tonne CSS Validierungsfehler wegen css3 und eine Tonne Warnungen. Was ist der beste Weg, damit umzugehen? Hier ist die Validierung:Wie kann ich mein CSS aufräumen?

http://jigsaw.w3.org/css-validator/validator?uri=http%3A%2F%2Fbrainbuzzmedia.com%2Fthemes%2Famplify%2Fwordpress%2F&profile=css21&usermedium=all&warning=1&lang=en

+1

Sie haben im Wesentlichen zwei Möglichkeiten: Fix'em (aber wahrscheinlich verlieren einige browserspezifische Funktionen und CSS-Hacks in dem Prozess) oder nicht reparieren sie. Was ist deine Priorität? –

+0

Gibt es eine Möglichkeit, Dinge wie -moz-border-Radius in css3 zu validieren? –

Antwort

2

Da Sie Ihr CSS anhand der CSS2.1-Spezifikation validieren, können Sie eine Reihe von Fehlern für alle CSS3-Eigenschaften erwarten, die Sie in Ihren Stilen enthalten haben (z. B. abgerundete Ecken). Sie sollten gegen die höchste Spezifikation validieren, gegen die Sie schreiben: CSS3 in Ihrem Fall.

Wenn wir run the validator again with CSS3, Sie sofort die Anzahl der Fehler, die Sie sehen, halbieren. Auch hier können Sie die Fehler abbrechen, die für herstellerspezifische Attribute wie -moz-border-radius angegeben wurden, da die CSS-Spezifikationen nicht nach dem Typ des Browsers unterscheiden, sondern nur nach der Standard-Deklaration border-radius. Browser-Anbieter haben ihre eigenen Präfixe als Absicherung gegen einen noch nicht ratifizierten Standard angenommen (obwohl der Grenzradius eigentlich von allen Browsern, die IMHO bereits verwenden, unterstützt werden sollte).

Sobald Sie diese Probleme herausgenommen haben, sieht Ihre Fehlerliste tatsächlich ziemlich überschaubar aus, mit nur ein paar Star-Hacks, die der Validator nicht mag. Wenn Sie Ihr CSS besser fideln können, um die gleichen Ergebnisse in IE ohne so viele Hacks zu erreichen (oder vielleicht ein separates IE-Stylesheet mit einem bedingten Kommentar in Ihrer Wordpress-Vorlage), sollten Ihre Stile alle gut aussehen.

Die Quintessenz ist im Wesentlichen, wenn Sie CSS3 und herstellerspezifische Präfixe verwenden, können Sie erwarten, dass der W3C Validator Sie dazu aufruft, was er für nicht standardmäßige Deklarationen hält.

+0

+1 Ich würde definitiv ein IE nur stlyesheet verwenden, das in bedingten Kommentaren anstelle von Hacks aufgerufen wird. – JakeParis

1

Wenn Ihr CSS CSS 3, Sie den Validator einstellen kann sie als solche zu bewerten. Es bewertet es als CSS 2.1 bei diesem Link.

+0

Ah Ich wusste nie, dass es eine CSS3-Option gab. Das reduziert auf 64 Fehler. Aber gibt es eine Möglichkeit, Dinge wie -moz-border-Radius in css3 zu validieren? –

0

Verwenden Sie tatsächliche CSS-Kommentare anstatt einfach einen Stern vor die Regel zu setzen. Sie können immer faul kommentieren, wenn Sie etwas hin und her arbeiten.

Diese analysiert die Regel:

/* */ 
.body { display: none; } 
/* */ 

Dies gilt nicht, wenn Sie den Raum nach dem zweiten Stern hinzufügen

/* */
.body { display: none; } 
/* */ 

Wenn Sie die Methode, die Sie haben von „Ausschalten“ verwenden müssen, eine Regel, indem Sie ein falsches Zeichen davor setzen, erwarten Sie zumindest nicht, dass Ihre Seite gut validiert wird.

+1

Was bedeutet "* margin-top: 10px"? – JakeParis