2010-11-25 10 views
9

Observe dass die jQuery-UI-CSS die Validierung nicht besteht.Ist gültiges CSS "wichtig"? (Das jQuery-UI-CSS validiert nicht.)

Ich versuche mich an Standards zu halten, wo immer ich sie finden kann. Ich schaue auf jQuery UI und wundere mich, warum eine Gruppe von Entwicklern, die ein solides Produkt macht, nicht einmal die W3C auferlegten Standards anzuerkennen scheint.

Ist die W3C CSS Validator einfach zu wählerisch? Oder sollte ich diesen Fehlern/Warnungen mehr Aufmerksamkeit schenken?

Ist ein gültiges CSS wichtig? Warum hast du das Gefühl, dass es wichtig ist?

Antwort

11

In der perfekten Welt, ja, es wäre wichtig. Um CSS in jedem Browser aussehen zu lassen, bedarf es einiger Kreativität. Das Ergebnis ist, dass es möglicherweise nicht streng gültig ist, aber funktioniert in (zum Beispiel) IE und Safari beide, auch sie können die gleichen Regeln sehr unterschiedlich interpretieren.

Ich denke, HTML-Validierung ist viel wichtiger, weil es Ihr Inhalt ist. Screenreader oder andere Hilfsmittel zur Barrierefreiheit hängen von standardisierten und gut strukturierten Inhalten ab. Aber CSS soll nur dazu beitragen, dass die Dinge gut aussehen. Und wenn es nett aussieht, wenn du es willst, dann würde ich das vollkommen "gültig" nennen.

4

Versuchen Sie auch, in 3.0 anstelle von 2.1 zu validieren. Das sorgt für ungefähr 20 Fehler.

Viele der Fehler sind Fehler unbekannter Eigenschaften, die Browser-spezifisch sind (wie -moz-opacity). Beobachten Sie, wie viele der verbleibenden 112 Fehler "-moz-", "-webkit-" oder etwas in Bezug auf IE-Filter enthalten. Diese Eigenschaften werden verwendet, um Konsistenz zwischen Browsern zu erzielen, die die CSS 3.0-Spezifikation nicht implementieren.

+1

Im aktuellen w3c CSS-Validierer können Sie Vendor-Erweiterungen (wie '-moz-' oder '-webkit-') setzen) um Warnungen anstelle von Fehlern zu werfen. Hilft viel. –

1

Es ist nicht notwendig, den Standards zu folgen, aber ich würde es nach bestem Wissen und Gewissen ermutigen. In diesem Zusammenhang ist es manchmal notwendig, Standards für die Browserkompatibilität zu brechen.

+0

Oder vielmehr, wegen Browser * Inkompatibilitäts *. Das gleiche denke ich. –

1

Die Validierung kann ein nützlicher, automatisierter Weg sein, um Fehler zu erkennen. Wenn Sie absichtlich ungültigen Code verwenden, haben Sie Ihren automatisierten Weg zur Erkennung von Fehlern verloren.

Das besagt, der Validator muss aktualisiert werden, um zu erkennen, dass -vendor- Präfixe gültig sind. (Oder die Spezifikation muss aktualisiert werden, um diese Präfixe als gültig zu klassifizieren, weil sie funktionieren - siehe HTML5.)