semigator.de Relaunch

Letzten Monat ist nach ca. 3-monatiger Team-Arbeit das neue Semigator online gegangen.

Bildschirmfoto www.semigator.de

Bilschirmfoto: www.semigator.de

Zusammen mit mehreren Backendern und zwei weiteren Frontendern wurde die Code-Basis von semigator.de komplett neu implementiert. Mein Schwerpunkt lag in der grundsätzlichen Layoutumsetzung am Frontend von Semigator.

Die Layout-Lib

Eine Anforderung war, die unterschiedlichen Layouttypen, die in der Semigator-Website existieren, teamgerecht in den Griff zu kriegen. Wer mein Blog schon länger liest, wird sich nicht wundern, dass ich so gar keinen Bock auf Layout-Hacks hatte und deswegen gleich zur FAP-Methode gegriffen habe.

(Siehe frühere Einträge zu Faux Absolute Positioning: Bookmark: Faux Absolute Positioning, Realigned, Drei-Spalter, faux absolute positioniert, imedo.de Relaunch mit "Faux Absolute Positioning"-Technik)

Ein weiterer Grund für FAP war auch, dass ich die verschiedenen Layouttypen, die im Projekt benötigt wurden, sehr leicht in einer layout-lib.css vordefinieren konnte. Unter anderem gibt es folgende Layouttypen bei semigator.de:

  • Ein-Spalter über die volle Breite
  • Zwei-Spalter, mal im 80:20-, mal im 66:33- und mal im 20:80-Verhältnis
  • Drei-Spalter, wie auf der Startseite

In der Layout-Lib sind alle Informationen dazu vorhanden. Sie beginnt mit einem ausführlichen CSSDOC-Block, in der ich auch Layout-Angaben für diverse Maße und Abstände dokumentiere. Dass ich hierbei mit Elementen wie @layout-padding-macro außerhalb der Spezifikation bin, ist mir bewusst, aber auch ziemlich egal ;-). (Ich hätte z.B. für Eigenerfindungen zumindest 'Vendor-specific Tagnames' mit einem beginnenden - oder _ verwenden sollen.) Der Zweck ist die Dokumentation fürs Entwickler-Team, nicht etwa die parsability.

Nach den Definitionen von body, #Canvas und den fürs FAP gebräuchlichen .section und .screen-Styles, kommen die Angaben für die diversen Layouttypen. Ganz unten dann 2-3 Standard-Konstrukte für gefloatete 2- oder 3-Spalter.

Elastizität

Was mich sehr gefreut hat, war die Entscheidung der Geschäftsführung, es mit einem fluiden Layout zu versuchen. Das vorhandene, em-basierte Layout dann auf Fluid umzustellen, war dank dieses Aufbaus im CSS dann auch keine große Sache. Fluid, heisst aber nicht immer schrankenlos Fluid und so skaliert dieses Layout zwischen 980px und 1400px (in Browsern, die diese Bezeichnung verdienen), was bei einigen 3-Spaltigen Seiten oder Seiten mit vielen tabelarischen Daten für ein Atmen des Layouts bei größerem Browser-View-Port sorgt.

Bildschirmfoto www.semigator.de Vollbild auf einem 22 Zoller

Bilschirmfoto: www.semigator.de Vollbild auf einem 22 Zoller.

CSS-Switches

In diesem Projekt habe ich mehr als sonst mit CSS switches (wie ich sie nenne) gearbeitet. Das heisst, dass die Styles eines HTML-Konstrukts abhängig von seiner Container-Klasse sind. Etwa wie im Formular-Mockup vom Web Interface Starter Kit (von dem bereits eine neue, überarbeitete Version in der Mache ist), wo die Anordnung der Labels zu ihren Input-Elementen von der .horiz- oder .vert-Klasse im fieldset- oder sonstigem darüber liegenden Element abhängt.

So gibt es z.B. CSS-Klassen, die entscheiden, ob der main content innerhalb von Boxen mit Schatten oder ganz pur ohne Linien und Schnickschnack in die Landschaft gesetzt wird (<-- was der häufigere Fall ist).

mit Schatten-Boxen

Bilschirmfoto: ... mit Schatten-Boxen.

und ohne alles

Bilschirmfoto: ... und ohne alles.

Auch die grafischen Submit-Buttons (4 verschiedene Typen, die in Größe, Farbe und beinhaltendem Icon variieren) kommen mit dem selben Markup aus und lassen sich per CSS-Klasse im Anchor umswitchen.

Bildschirmfoto der Buttons

Bilschirmfoto: Button-Typen auf Semigator.

Die oben beschriebene layout-lib.css ist selbst eine Sammlung von Schaltern. Die entsprechenden Klassen müssen nur dem FAP-.section-Element hinzugefügt werden und man hat automagisch eine crossbrowserfeste Layoutspalte mit den gewünschten Eigenschaften. Und so gibt es weitere kleine Schalter, die den Frontender in die Lage versetzen sollen, häufig wiederkehrende Markup-Konstrukte bequem zwischen vordefinierten Stilen umschalten zu können.

Diese Switches sind alle aus einer Notwendigkeit im Projekt entstanden und vielleicht nicht universell anwendbar bzw. machen nur im speziellen Fall Sinn. Sie haben alle einen großen Vorteil: Man kann erst mal das Wesentliche reinkloppen und später immer noch entschieden, ob das im Typ A- oder Typ B-Stil dargestellt werden soll [Agile und flexible Grüße an die Scrum-Ecke .... ;-)]. Und wie wir wissen, beginnt Webdesign mit dem Content, nicht mit dem Design.

Was ich aus diesem Projekt mitnehme

Nochmal hat sich gezeigt, das agile Entwicklung und Flexibilität in Relaunch-Projekten eine Frage der Vorbereitung und des Tool-Sets sind, das man als Webworker im Gepäck hat/haben sollte. Ich persönlich werde mich in Zukunft noch intensiver mit CSS-Schaltern, Parametrisierung und Wartbarkeit von Frontend-Code beschäftigen. Entwicklungen wie SASS oder CSS3 zeigen, dass es genau in diese Richtung geht.

Tuesday, October 13. 2009
Defined tags for this entry: , , ,
1444 hits

Comments

Display comments as (Linear | Threaded)

No comments (Add Comment)

Trackbacks


No Trackbacks

Add Comment

BBCode format allowed
Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA


Über

Das hier ist das private Weblog von Alp Uçkan. Ich entwickle Websites seit 1997 und arbeite derzeit als freiberuflicher Frontend-Entwickler.

Specialp Features

fapulous Framework (neu!)
Das erste XHTML/CSS-Framework auf Basis der Faux Absolute Positioning-Technik. Beinhaltet viele performante Konstrukte. Der Stoff, aus dem professionelle Websites gemacht sind ... ;-)

monitorThis 1.0
With MonitorThis you can subscribe to 26 different search engine feeds at the same time.

Business Blogging Weeks
Blog-Serie über die Kommerzialisierung der Blog-Szene in 2005

neueste Leser-Kommentare:

06.02.2011 17:28
Lucky Number Slevin hat sowieso die besten Filmzitate! Hier noch ein paar sehr Gu [...]
21.01.2011 13:26
Ok, I will do this in the next few days, probably two weeks. I have to do some three [...]
21.01.2011 12:52
Dear Mr Binder, a free german translation of this tutorial would be highly apprec [...]