it-swarm.com.de

Wann sollte ich ein CSS-Framework verwenden?

Was sind die Best-Practice-Szenarien für die Verwendung eines CSS-Frameworks? Wann ist es besser, Ihr eigenes CSS von Grund auf neu zu erstellen, als Frameworks zu verwenden?

11
Mark Hatton

CSS-Frameworks sind etwas knifflig, weil sie für mich keine wirklichen Frameworks sind. Sie sind einfach vordefinierte Klassen. Dies ist jedoch nicht Ihre Frage.

CSS-Frameworks eignen sich hervorragend für Mock-ups und Wire-Frames. Ich würde nicht empfehlen, sie auf einer Live-Site zu verwenden, da sie Ihrem Markup bedeutungslose Klassen hinzufügen. ".span3" sagt mir nichts über den Inhalt, nur das Design.

In Blueprint gibt es jedoch einige coole Tools, mit denen Sie die Framework-Klassen und die semantischen kombinieren können, sobald Sie fertig sind.

Ich rolle immer mein eigenes CSS.

11
Kevin

Vermeiden Sie sie einfach, sie sind nichts als ärgerlich.

Besonders dieser.

* { margin:0; padding:0; }

Meine größte Beschwerde ist, dass Sie, wenn Sie eine Site erben/pflegen, die ein Zurücksetzen und/oder ein Framework verwendet, dieses Framework erlernen müssen, bevor Sie die Site ändern können.

Wenn ich ein h1-Tag hinzufüge, erwarte ich bestimmte Dinge. Bei den meisten Zurücksetzungen werden alle Auffüllungen, Ränder, Blöcke usw. entfernt, sodass ein h1-Tag standardmäßig nicht mehr wie gewünscht funktioniert. Also muss ich zurückgehen und alles hinzufügen, was überhaupt da war.

Generell (nach meiner Erfahrung) seine Leute, die CSS nicht verstehen, die die Resets und Frameworks verwenden, und es verursacht mehr Arbeit für die Leute, die es tun.

3
corymathews

Meiner Meinung nach ist der einzige Service, den ein CSS-Framework bietet, ein Ausgangspunkt für diejenigen, die mit CSS nicht sehr vertraut sind.

2
Soleil

Ich empfehle auch die Verwendung einer reset.css von Eric Meyer, aber ich denke, dass CSS-Frameworks für das Layout von Vorteil sein können. Mit Blueprint, YUI-Raster und 960-Raster können Sie einige sehr komplizierte Layouts erstellen, ohne die CSS selbst zu schreiben.

Es wurden zwar Nachteile erwähnt, aber das Gleiche gilt für das Erstellen einer Website auf der Grundlage eines CMS, anstatt beispielsweise benutzerdefinierten Code zu rollen. Sie können jedoch weiterhin nützlich sein und für viele Websites überwiegen die erzielten Vorteile alle externen CSS- oder Leistungsprobleme.

2
Steve Tranby

Wenn Sie tatsächlich ein eigenes Design implementieren, werden Sie einige Ihrer eigenen CSS schreiben (es sei denn, jemand anderes hat zufällig das gewünschte Design geschrieben).

Vorausgesetzt, Sie schreiben einige Ihrer eigenen CSS-Codes, können "Frameworks" nützlich sein, wenn Sie Stile haben, die:

  1. an mehr als einem Ort verwendet werden; und
  2. kompliziert genug, um in ihre eigenen Klassen abzubrechen

Für wirklich einfache Stile ist es besser, Klassen zu verwenden, um anzuzeigen, dass was etwas ist (z. B. class="navigation"), und dann das Aussehen zu definieren, indem Sie Stilregeln auf diese Klasse in Ihrem Stylesheet anwenden.

Aber für komplexere Stile, die nicht unbedingt an ein Element gebunden sind (z. B. layoutbezogene Stile, die Art, in der Frameworks Namen wie .span3 vergeben), ist es nicht falsch, sie in eine Klasse einzufügen und diese anzuwenden Klasse in der CSS. Sie können beide Ansätze zusammen verwenden.

Bei größeren, komplexeren Sites, bei denen Elemente wahrscheinlich auf unvorhersehbare Weise kombiniert werden, kann ein Framework-ähnlicher Ansatz wirklich dazu beitragen, den Code besser zu verwalten.

Ich würde sagen, dass Sie genauso gut Ihr eigenes "Framework" schreiben können. Ich habe "Framework" in Anführungszeichen gesetzt, weil CSS wirklich keine so große Sprache ist. Sie könnten CSS: The Definitive Guide (Eric Meyer) an einem Tag lesen und dann den gesamten Code in z. Blueprint (ein CSS-Framework) und verstehen ziemlich genau, was los ist. Möglicherweise müssen Sie die Problemumgehungen für IE ein wenig untersuchen, aber wir sprechen von mindestens einer Größenordnung weniger Komplexität als z. jQuery hier.

1
Paul D. Waite

Ich benutze Blueprint für CSS.
CSS ist, wie oben bereits erwähnt, wirklich unkompliziert.

In der Realität müssen Sie jedoch die Plattform berücksichtigen.

Mit CSS erhöht die Rendering-Engine die Komplexität.

Gecko vs WebKit vs Presto vs Trident ... wer will das alles machen?

Was Ihnen hier ein "Framework" bietet, ist die Möglichkeit, Layouts zu schreiben, die höchstwahrscheinlich in allen Browsern funktionieren, sodass Sie nicht nach dem "WTF-am-I-doing = -this-crap" IE 7 quirksmode fix oder so ähnlich lächerlich.

Frameworks machen 90% des gewünschten Layouts, und Sie können später immer noch eigene Stile hinzufügen.

Um die Frage zu beantworten, würde ich sagen, wählen Sie ein Framework aus und prüfen Sie, ob es für Sie funktioniert. Es könnte einfach sein. Dann bist du golden und kannst zu dem zurückkehren, was du eigentlich tun wolltest. Wenn nicht, erweitern Sie es mit CSS und ändern Sie, was nicht funktioniert hat. Auf diese Weise behalten Sie den browserübergreifenden Vorteil bei, können ihn aber trotzdem anpassen.

Als kleiner Vorteil können Sie sagen, wenn Sie einen auswählen und ihn die ganze Zeit verwenden und dann krank werden oder befördert werden und Ihren Nachfolger ausbilden müssen:

"Ja, ich habe Framework ABC verwendet. Dokumente sind hier. Code ist da. Training beendet. Viel Glück."

1
chiggsy

Wenn es alle Ihre Bedürfnisse löst . (Dies basiert auf der Idee der Anpassung .)

Aus dem einzigen Buch über Frameworks? http://www.oreilly.com/web-platform/free/book-of-html-css-frameworks.csp . (Nur verlinken, weil es hier kostenlos und relevant ist.)

0
Shawn Northen