Sven Finke | Mediengestaltung

Sven Finke | Mediengestaltung

Sven Finke  //  Münsteranischer Webentwickler und Designer. Gerade im neuen Betrieb angekommen und gespannt auf die Herausforderungen die mich hier erwarten :)

Jul 7 / 6:44am

HTML5 und CSS3 in Kundenprojekten einsetzen?

Sollte man HTML5 oder CSS3 in Kundenprojekten einsetzen? Ich denke das diese Frage derzeit in vielen Köpfen herumschwebt. Ich würde dabei erst einmal klar trennen zwischen CSS3 und HTML5. CSS3 kann in den meisten Fällen ohne weitere Bedenken eingesetzt werden. Anders als noch vor in paar Jahren bei CSS2.1 äußern sich eventuelle Unterschieden in den verschiedenen Browsern nur selten in einem komplett zerstörten und unbrauchbaren Layout. Vielmehr geht es hier oft einfach um "Eye-Candy". So werden einigen Boxen und Texten Schatten hinzugefügt. Kanten werden abgerundet und hier und da werden Verkäufe oder Alpha Transparenzen verwendet. 
Stellt man sich dabei halbwegs geschickt an, merkt der Nutzer selbst gar nicht das ihm was fehlt, erst im direkten Vergleich bemerkt er die Unterschiede und sieht, das die Seite im Chrome dann doch wesentlich besser aussieht als im IE8.

Bei HTML5 sieht das unter Umständen schon anders aus. So kommt es hier schnell vor das ein User das angepriesene Video nicht abspielen kann weil er einen falschen Browser verwendet. Auch bei der Verwendung anderer Features ist Vorsicht geboten! Wenn man nicht aufpasst kann es schnell passieren das man alle Benutzer mit dem Browser aussperrt und diese die Webseite nicht mehr verwenden können, das wäre natürlich mehr als ärgerlich... 

Ich werde deshalb die Verwendung von HTML5 auf einen ähnlichen Bereich beschränken wie CSS3. Es wird als nettes kleines Gimmick eingebaut, so das man dynamische Hintergründe mittels des Canvas Objekts erzeugt, oder dem Benutzer durch die neuen Formularfelder das Leben einfacher macht. Verzichten werde ich aber erstmal auf Features wie Local Storage oder die Einbindung von Videos über HTML5. Das ist mir einfach noch zu unsicher und bedeutet unter Umständen nur Stress für mich und den Kunden.

Dennoch ist es in meinem Augen wichtig sich bereits mit HTML5 und CSS3 vertraut zu machen. Diese neuen Technologien sind definitiv auf dem Vormarsch, wer da am Ball bleiben möchte sollte sich schon jetzt mit ihnen vertraut machen!
Filed under  //  css3   html5  
Jul 6 / 4:51am

Freiberufler

So, seit gestern bin ich offiziell als freiberuflicher "Gestalter für interaktive Medien" tätig. Dabei bin ich hauptsächlich am gestalten von Webseiten oder Bannern und am programmieren eben jener Webseiten. Da ich bisher nun noch nicht so viel mit Design am Hut hatte, fange ich hoffentlich im März mit meinem Studium der Medieninformatik in Osnabrück an, dort wird dann alles nachgeholt was ich bisher noch nie gelernt hab oder was ich in meiner Ausbildung wieder verlernt habe - z.B. Mathe ;)

Aber soweit so gut, da ich nun mehr in diesem Bereich arbeite werde ich nun auch öfters mal dazu kommen ein bisschen was interessantes aus meinem Arbeitsalltag auszuplaudern, ich bin mal gespannt wie sich das so in den nächsten Jahren entwickelt.
Apr 28 / 8:19am

3D Supply

Im Moment hat 3D Supply ne echt coole Marketing Aktion gestartet. Für einen kleinen Link auf die Seite bekommt man ein T-Shirt. Hier also der Link zu der Aktion:

http://www.3dsupply.de/shirt4link/

Mar 24 / 6:10am

Moleskine Alternative

Hm, naja, so viel kann ich zu den "echten" Moleskine's jetznich sagen, ich hatte noch nie ein in meinem Besitz, aber ich war gestern auf der Suche nach einem günstigen Notizbuch, das ähnlich aussieht und aufgebaut ist.
Im Internet hab ich da zwar ne ganze Menge gefunden, aber ich wollte nicht noch ein paar Tage warten bis das Notizbuch da ist, ausserdem waren die Versandkosten meistens fast genauso hoch wie der Preis für das Notizbuch.

Also hab ich mich in Rheine auf die Suche gemacht und dann auch tatsächlich was gefunden. In meinem Besitz befindet sich nun ein "CoolNotes" Notizbuch von teNeues. Es hat ungefähr eine DinA6 Größe, ist schwarz, hat ein Gummizug zum verschließen, ein Lesezeichenbändchen und eine Tasche für lose Notizen. Alles was man so braucht :)

Aber was mach ich nun damit? Ich denk mal das muss jeder selbst für sich heruasfinden. Ich wollte es einfach mal ausprobieren ob es für mich überhaupt einen Mehrwert hat. Ob es sich lohnt sich sowas anzuschaffen. Vielleicht folgen demnächst mal ein paar Screenshots oder vielleicht habe ich auch demnächst ein gebrauchtes Notizbuch von teNeues zu verschenken, da ich es fast gar nicht benutze^^

Filed under  //  moleskine  
Mar 4 / 6:14pm

CSS 100% Höhe mit margin und padding

Wie kann man ein Element auf 100% Höhe skalieren und trotzdem noch margin und padding Werte hinzufügen? Durch das BoxModel werden padding und margin Werte leider auf die Höhe des Elements drauf gerechnet. So erwartet man von einem Element mit einem padding von 5px und einer Höhe von 100% vielleicht das es - wenn das Elternelement 200px hoch ist -  eine Höhe von 190px. Allerdings wird einem da schnell ein Strich durch die Rechnung gemacht. Das Element wird eine Höhe von 200px haben. Der Padding Wert wird da dann noch hinzugerechnet. Also bekommt man ein 210px hohes Element.

Was macht man nun damit man die korrekte Höhe bekommt? Dazu muss man sich erstmal wieder ein paar andere Angaben auf den Plan rufen: top und bottom. Kombiniert man diese nun mit dem Wert auto für die Höhe und einer absoluten Positionierung für das Element dann ist alles wie man es haben will :)

Aber hier einmal eine Beispielhafte Deklaration mit Margin und  Padding:

*.stretchedMargin {
    display: block;
    position:absolute;
    height:auto;
    bottom:0;
    top:0;
    left:0;
    right:0;
    margin:5px 5px 5px 5px;
    padding:5px 5px 5px 5px;
}

Hier wird das Element zudem in der Breite angepasst, auch das ist natürlich möglich, aber nicht nötig.

Diese Lösung stammt im übrigen nicht von mir, ich hab sie auf stackoverflow.com gefunden und wollte sie auch für diejenigen zugänglich machen die dem englischen vielleicht nicht ganz so mächtig sind ;)

Filed under  //  css   tutorial  
Mar 3 / 12:40pm

jQuery Menü Animation

Als kleine Einführung in jQuery habe ich mal eine Menü Animation vorbereitet. Hier erstmal eine Demo Page um zu zeigen was ich erreichen will:

DEMO Page

Ziel ist es also ein Menü mit 2 Ebenen zu erstellen, wobei die 2. Ebene mithilfe von kleinen Animationen eingeblendet wird. Also fangen wir einmal mit der html Datei an. Das Grundgerüst muss nunmal stimmen damit man weiter arbeiten kann. Für das Menü verwende ich verschachtelte unsortierte Listen. Die erste Liste wird von einem Div umschlossen.

<div id="menu">
    <ul>
        <li>Link 1
            <ul>
                <li>Link 1.1</li>
                <li>Link 1.2</li>
                <li>Link 1.3</li>
            </ul>
        </li>
                <li>Link 1
            <ul>
                <li>Link 1.1</li>
                <li>Link 1.2</li>
                <li>Link 1.3</li>
            </ul>
        </li>
    </ul>
</div>

Der Einfachheit halber belasse ich es hier bei zwei Menüpunkten mit einigen Links in der 2. Ebene. Wenn man das nun in seiner Seite öffnet sieht es wahrscheinlich ziemlich unspektakulär aus. Also sorgen wir mit folgenden CSS Zeilen dafür das die Liste horizontal angeordnet wird und die 2. Ebene verschwindet:

#menu li>ul{ display:none; } /* Blendet die 2. Ebene aus */

#menu {
    height:30px;
    margin:0px auto;
    padding:0;
}

#menu>ul {
    margin:0;
    padding:0;
}

#menu>ul>li {
    float:left;
    width:150px;
    line-height:30px;
    height:30px;
    position:relative;
}

Das sorgt nun schonmal für die richtige Darstellung der ersten Ebene. Hintergrundfarben etc. lasse ich erstmal aussen vor. Aber wie wollen wir nun die 2. Ebene einblenden? Ich werde vorerst die Lösung per jQuery vorstellen, danach noch ein kleines Workaround, damit die Navigation auch ohne Javascript funktioniert.

Ich verwende hier die von Google gehostete jQuery Version, immer die aktuellste 1.4er die gerade released ist. Ist meiner Meinung nach eine sehr schöne Lösung, aber nicht zwingend notwendig. Ich will in dem HTML Code keine Events definieren müssen, also lasse ich all das von jQuery erledigen. Das hat auch den Vorteil das der Seitenquelltext übersichtlich gehalten wird. Hier also die Javascript Zeilen:

jQuery.initMenu = function(id)
{
    $("#"+id+">ul>li ").hover(
        // MouseOver Function
        function(){
            $(this).children("ul").slideDown(200);
        },
        // MouseOut Function
        function(){
            $(this).children("ul").slideUp(200);
        }
    );
}


$(document).ready(function()
    {
        $.initMenu("menu");
    }
);

Erstmal eine kleine Erklärung was ich hier nun gemacht habe. Um das Menü ein- bzw. auszublenden nutze ich 2 verschiedene Handler die ich mit der hover Funktion von jQuery zuweise. Da ich über das 'li' Element das Event abfeuere, kann ich einfach über die funktion children die versteckte Liste auswählen und über .slideDown einblenden, bzw. über .slideUp ausblenden.
Was vielleicht noch ganz interessant ist: Durch die oben verwendete Definition haben wir unser erstes kleines "Plugin" geschrieben ;) Man kann es jetzt natürlich noch anpassen und dafür sorgen das man andere Animationen einstellen kann, die Dauer der Animation usw... Aber das lassen wir vorerst einmal. Die Funktion des Plugins wird nun ausgeführt wenn die Page fertig geladen ist.

Was ich aber noch einbauen möchte ist ein Workaround für alle Nutzer die Javascript deaktiviert haben. Das geht ziemlich einfach und ist kein großer Aufwand. 2 Zeilen und eine Änderung. 1 Zeile CSS und 1 Zeile Javascript und eine Änderung in der HTML Datei. Das wars.

#menu.noJS li:hover>ul{  display:block;  }

Das war der CSS Teil, und an den Anfang der initMenu Funktion setzen wir nun folgende Zeile:

$("#"+id).removeClass("noJS");

Und damit das ganze Sinn macht muss der div Container nur noch die Klasse "noJS" bekommen. Fertig.

Ich hoffe ich hab mich bei meinem zweiten TuT nicht allzu doof angestellt (das erste findet sich auf phphatesme.com zum Thema Zend Framework). Ich möchte aber noch betonen das es auf keinen Fall eine perfekte Lösung ist, ich bin selbst noch dabei mir jQuery näher zu Gemüte zu führen. Kritik dürft ihr gerne in den Kommentaren äußern!

 
 
Filed under  //  css   javascript   jquery   tutorial  
Mar 1 / 12:10am

jQuery ... LOST?

Hm... ich hab mich gestern echt etwas gewundert als ein Freund, seinerseits auch Entwickler, mit jQuery mal so überhaupt nichts anfangen konnte. Ihm war das Framework komplett unbekannt. Er hatte dann auchb wohl in deutschen Foren rumgeschnüffelt und angeblich kaum etwas gefunden. Das halte ich zwar gerade für ein Gerücht ;) aber trotzdem wundert es mich doch sehr das er das Ding nicht kannte. Ist das ein Einzelfall oder ist jQuery doch nicht so bekannt wie ich bisher gedacht habe?

Naja, ich werde auf jeden Fall trotzdem weiterhin auf jQuery setzen, es ist meiner Meinung nach einfach so ziemlich das beste was Javascript jemals passiert ist :) Und falls es wirklich so wenige deutsche Qeullen gibt, werde ich vielleicht auch ein bisschen was dagegen tun und hier und da mal was drüber schreiben.

Filed under  //  jquery   wtf?!?  
Feb 23 / 6:31pm

CSScaffolded Awesomeness

Wer hat sich schonmal nach Variablen und Funktionen in CSS gesehnt? Verschachtelten Definitionen für Eigenschaften? Automatische Komprimierung der CSS Dateien? Erweiterungen der Selektoren?
Es gibt wirklich so einige Sachen die man sich immer mal wieder in CSS wünscht, die aber einfach fehlen oder ziemlich umständlich einzubauen sind. Wie oft hab ich mir schon verschachtelte Anweisungen gewünscht? Nur damit das ganze etwas übersichtlicher, strukturierter und auch kürzer wird.

Naja, ich hab mich dann auch mal nach verschiedenen CSS Frameworks umgeschaut, aber das war alles nich so das richtige... Manchmal wurde die Syntax ziemlich über den Haufen geschmissen, und manchmal war mir das Ganze einfach zu kompliziert einzubinden. Ich wollte einfach das Framework kopieren, vielleicht kurz 1-2 Parameter einstellen und dann fertig sein. Und ganz normal weiter mit CSS Dateien arbeiten die ich nicht erst neu rendern muss o.Ä.. Naja, CSScaffold kopiere ich nun einfach in den CSS Ordner. Dann wird noch kurz eine .htaccess Datei kopiert und ggf. wird noch ein Pfad geändert. Das wars.

Für die Einbindung in die HTML Datei ändert sich halt einfach mal gar nichts. Es lassen sich höchstens noch nachträglich Parameter einstellen die festlegen ob die CSS Datei neu verarbeitet werden soll oder einfach aus dem Cache geladen wird. Aber das ist für mich ja in erster Linie mal nebensächlich.

Da ich im deutschsprachigen Raum bisher noch nicht so viel von CSScaffold gehört habe, werde ich sicherlich noch ein bisschen darüber schreiben. Ich für meinen Teil finde das CSS Framework sehr gelungen und eifnach zu handhaben. Man kann die Funktionen exessiv nutzen, ist aber nicht dazu gezwungen. Aber dazu dann an anderer Stelle mehr.

Filed under  //  css   csscaffold   framework  
Feb 23 / 5:15pm

Was ich hiermit beabsichtige...

... ist eine kleine Sammlung an Ideen die mir so in den Sinn kommen, Techniken die ich in den Weiten des Netzes finde und vielleicht auch die ein oder andere Diskussion über etwas kontroversere Themen aus dem Bereich Webdesign und Webentwicklung.
Ich möchte mich hier erstmal noch nicht so festlegen zu welchem Bereich der Blog eher tendieren wird, da ich mir da selbst absolut nicht sicher bin... Es wird auf jeden Fall von meiner zukünftigen beruflichen Karriere abhängen, ob ich nun eher in den Bereich der Entwicklung oder den des Designs tendiere.

Ich hoffe das sich dieser Blog gut entwicklet und sich ein paar Leute für mein getippse interessieren.