Sollte ich jeden einzelnen HTML- und CSS-Standard genau befolgen?


11

Vor ein paar Jahren betrachtete ich mich als Webentwickler und kannte die drei grundlegenden Sprachen (HTML, CSS, JS) und viel PHP. Der Übergang von einfachem Text zu tatsächlichen Websites war wegen der sogenannten "Standards", die zu dieser Zeit für mich lächerlich kompliziert waren, ein Schmerz. Es lief ziemlich darauf hinaus (abzüglich der IE-bezogenen Dinge):

Webentwicklung in einem Kreisdiagramm

Standards sollen alte Methoden ersetzen, um Dinge einfacher zu machen. Bei dem Versuch, einige der Dinge tatsächlich zu implementieren (z. B. vollständig CSS-basiertes Layout), habe ich 10x länger gebraucht, um sie tatsächlich auszuführen, als wenn ich die einfachere und immer noch funktionierende Lösung gemacht hätte. Wenn es dasselbe gerendert hat, warum sollte ich dann das kompliziertere Beispiel verwenden, das 10x länger dauert und nach dem Browserwechsel unterbrochen wird? Dies löste viele lange religiöse Debatten in ## php, ## css und ## js im Freenode IRC aus und ließ mich tatsächlich aus ## css verbannen, weil ich mich dort mit ihrer kleinen Welt herumschlug.

Meine Frage: Sollte ich alle Standard- und Codierungskonventionen befolgen, auch wenn sie 10x länger dauern, aber das gleiche Ergebnis wie die einfache erzielen?


Befolgen Sie für das Umfragetag diejenigen von Ihnen, die Websites jeder Größe (groß oder klein) haben , alle Standards?


Haben von diesem Diagramm ist Anti-IE obwohl ...
Ullallulloo

Standards und Konventionen sind sehr unterschiedlich. Ich würde sagen, folgen Sie den Standards (W3C-Spezifikationen, gültiger Code), da die Dinge kaputt gehen, wenn Sie dies nicht tun. Tableless Design ist jedoch eine Richtlinie, Präferenz, Best Practice, aber kein Standard an sich.
Inka

Ich habe einen Algorithmus entwickelt, um die Produktivität um 47% +/- 5% zu steigern. Beginnen Sie mit der Entwicklung in IE und Sie müssen sich keine Gedanken über FF, Chrome, Safari usw. machen .... :). Alle anderen Browser funktionieren einfach
Ibu

Sie verwenden CSS, weil Sie, nachdem Sie die 50. Tabelle erstellt haben und jemand kommt und Sie bittet, sie alle so zu ändern, dass sie unterschiedlich und dennoch einheitlich gestaltet sind, nicht an einem glücklichen Ort sind. Ich war dort, habe das getan (aber ich war es nicht, der das erste Durcheinander verursacht hat)
Kevin Cline

Antworten:


12

Produkt zuerst, dann polieren.

Bringen Sie Ihre Site / Anwendung / Ihr Spiel dazu, das zu tun, was es tun soll. Bringen Sie es zum Laufen und bringen Sie die Leute dazu, sich dafür zu interessieren.

Wenn Sie Zeit haben, gehen Sie zurück und polieren Sie es auf. Aber nur, weil es dich interessiert, nicht weil es jemand anderes tut.

Wenn die Nichteinhaltungsprobleme dazu führen, dass die Benutzer es nicht anzeigen können oder es unleserlich hässlich ist oder das Laden einen Monat dauert oder die Wartung schwierig ist oder der Browser abstürzt, ist dies ein großes Problem. Aber es wäre immer noch ein großes Problem, selbst wenn Sie standardkonform wären.

Normale Benutzer suchen nicht in der Quelle nach einer Website, die nicht geladen wird, und sagen: "Nun, die Bilder werden nicht angezeigt, aber sie sind vollständig W3C-kompatibel." Sie navigieren einfach zu einer anderen Website und kehren nie zurück.

Unter dem Strich gibt es Standards, die das Schreiben von Browsern erleichtern und potenzielle Sicherheitslücken schließen. Amazon, Penny-Arcade und Stack Overflow verdienen ihr Geld nicht mit dem Betrieb einer standardkonformen Website. Und wenn Sie nicht an einem Website-Schreibwettbewerb teilnehmen, werden Sie es auch nicht tun.


12

Die Verfasser von Standards haben an Dinge gedacht, die Ihnen nicht in den Sinn gekommen sind, z. B. Bedenken hinsichtlich der Barrierefreiheit. Standards existieren aus einem Grund. Und mit HTML5 sind Standards ziemlich einfach zu befolgen.

Es kann gelegentlich Gründe geben, den Standard nicht zu befolgen, aber das Befolgen sollte Ihr Standardverhalten sein.


1
Das klingt fair genug. Ich versuche, allgemeinen Standards zu folgen, nur nicht jedem einzelnen
TheLQ

7

Faulheit ist keine Entschuldigung dafür, nicht dem Standard zu folgen. Manchmal, wenn der Standard dumm ist, ist das ein Grund, ihm nicht zu folgen. Woher weißt du, wann der Standard dumm ist? Wenn Sie sich über einen längeren Zeitraum nach Treu und Glauben bemüht haben, alle relevanten Standards in Buchstaben und Geist zu befolgen, und zu dem vernünftigen und gut unterstützten Schluss gekommen sind, dass der Standard in einem Nischenfall tatsächlich fehlerhaft ist, nicht Sie.

Meistens gilt dies jedoch nicht.


5

Ich würde sagen, dass Sie sich so gut wie möglich an Standards halten - aber verschwenden Sie nicht zu viel Zeit mit Nitpicking. Manchmal können Sie ein Standard-HTML / CSS überentwickeln, um die Perfektion von Standards zu erreichen, und im schlimmsten Zustand bleiben.

In einer unserer Webanwendungen haben wir beispielsweise eine Seite für die Rechnungsstellung. Die Seite enthält eine lange Liste der zu fakturierenden Artikel und enthält mehrere Spalten. Der ursprüngliche Entwickler ging mit dem "Tables are Evil" -Syndrom so über Bord, dass er die gesamte "Tabellen" -Struktur in CSS entwarf.

Ziemlich beeindruckend, bis Sie derjenige sind, der jetzt ein paar zusätzliche Spalten zum Bericht hinzufügen muss. Beobachten Sie, wie diese Spalten überall angezeigt werden, da Sie die CSS-Einstellungen, die Breite usw. neu anpassen müssen. Albtraum.

Wenn der Entwickler nicht so anal wäre, so genannte Standards bis zum Abschlag zu befolgen, würde er erkennen, dass eine reguläre HTML-Tabelle tatsächlich so viel sinnvoller wäre, das Rechnungsdatum ist schließlich tabellarisch.

Dies führt mich zu semantischem HTML. Ich glaube, dass Ihr HTML nur Elemente enthalten sollte, die Ihre Seite beschreiben. Stile sollten in CSS gespeichert und im schlimmsten Fall gegebenenfalls im Attribut 'Stil' des HTML-Tags eingegeben werden.

Ich sehe auch keinen gültigen Grund, warum man sein HTML nicht einem Validator unterziehen sollte - vorausgesetzt, Sie erhalten gültiges HTML, sind Sie so ziemlich da.


3

Ihre erste Überlegung sollte darin bestehen, die von Ihren Kunden verwendeten Browser zu unterstützen. Zweitens sollten Sie sich gegebenenfalls an Standards halten.

In einem kürzlich durchgeführten Projekt war beispielsweise Firefox 3.5 der einzige Browser, den wir unterstützen mussten. Dies bedeutete, dass wir die CSS-Eigenschaften von -moz verwenden konnten, ohne uns Gedanken darüber zu machen, wie die Seite in einem anderen Browser aussehen würde. Wäre es wirklich wert gewesen, auf dem langen Weg abgerundete Ecken zu machen, nur damit wir Standard-CSS verwenden?

Allerdings helfen Ihnen Standards beim Erstellen von Websites für mehrere Browser in der Regel, anstatt Sie zu behindern. Ich würde versuchen, die meisten Standards einzuhalten, aber keinen Schlaf verlieren, wenn ich aus Gründen der Browserkompatibilität abweichen müsste.

Für die Umfrage lautet die Antwort von mir Nein.


0

Folgen Sie den Standards nicht blind. Einige Standards sind gut, andere schlecht. Sie dienen verschiedenen Zwecken und einige, wie die Entwürfe von HTML5, dienen dazu, eine Sammlung der großen Browserhersteller und Webentwickler in eine bestimmte Richtung zu lenken, die größtenteils gut erscheint. Aber denken Sie immer daran, dass es viele schreckliche Dinge gibt, die standardisiert wurden ...

COBOL war auch ein Standard.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.