JT Yeek : cadeaux originaux geek et design

bbxdesign

CSS + WordPress + Web Design

June, 2009

Tableaux de support des standards sous IE6, IE7, Firefox et Opera

Billet

Pour savoir ce que l’on peut utiliser sans craindre une incompatibilité entre navigateurs, on peut se fier à ces tableaux des propriétés HTML, CSS, DOM et ECMAScript. Il manque juste Webkit dans le lot.
tableau-support-proprietes-css
Il y a par ailleurs un tableau résumant tout.

La performance ultime

Billet

Une CSS universelle pour IE6

Billet

Que faire face à IE6 ?

  • s’embêter avec des hacks CSS ?
  • faire 2 versions du site ?
  • laisser les bugs partout ?
  • utiliser une CSS alternative ?
  • utiliser du JavaScript pour améliorer la compatibilité ?

IE6, c’est vieux, c’est lourd, c’est moche, c’est chiant. Ca prend du temps, pour pas grand chose, et pour de moins en moins de monde (20% grande moyenne à l’échelle mondiale).

Et puis le web, c’est pour le contenu avant tout. Au lieu d’avoir un site buggé de partout sur IE6, pourquoi ne pas offrir une CSS propre et claire ? C’est l’idée derrière Universal Internet Explorer 6 CSS.

css-universelle-ie6

Futurebox = Lightbox sans JavaScript

Billet

futurebox

J’aimais pas trop les lightbox au début, un peu trop “fancy” à mon goût. Certains la critiquaient même exagérément. Bref, que l’on aime ou pas, ça utilise techniquement toujours du JavaScript.

Mais un ninja a réussi à le réaliser sans JavaScript, juste en CSS. Ca utilise la pseudo-classe :target. Et il appelle ça Futurebox.

Ok, ça marche pas sous IE (6,7,8) mais qu’est-ce qu’on s’en fout. Tiens d’ailleurs, gros f*ck à Microsoft pour son discours de merde (IE8 = le meilleur navigateur du monde entier de l’univers) et ses décisions de merde (Outlook 2010 utilisera le moteur de Word pour afficher le HTML).

Proposition de refonte du site d’American Airlines

Billet

aa

Dustin Curtis, un designer d’interfaces, devait réserver un billet sur le site (horrible) d’American Airlines. J’ai déjà eu à le faire aussi lorsque je suis allé à New York. Son expérience en tant qu’utilisateur n’ayant pas été très plaisante, il s’est dit qu’il allait proposer sa propre refonte du site.

american-airlines-refonte

Je suis personnellement très fan de cette refonte du bloc le plus important du site : la réservation. Il y a un côté aéré, léger (pour une compagnie aérienne, que demander de mieux ?) et efficace dans sa refonte. Je me rappelle que je voulais proposer une refonte du site l’Equipe.fr (un tout autre domaine, un tout autre rôle) mais j’ai pas pris le temps de le faire et entre-temps, leur refonte est plutôt réussie. :-)

La réponse d’American Airlines

Ok, Dustin Curtis ne connaissait sans doute pas les raisons qui amènent American Airlines à garder leur site tel quel. Mais il a reçu une réponse de la part du User Experience Architect. Un extrait (repris sur Words on Design – “shameless self promotion…”) :

We could even redesign the AA.com home page without having to slog through endless review and approval cycles with their requisite revisions and re-reviews.

En résumé, dans sa lettre de réponse, il dit qu’American Airlines est une boîte trop grosse avec beaucoup trop de gens impliqués dans le design pour que l’équipe de design puisse faire son boulot correctement, ou devrais-je dire, puisse faire son boulot tout court.

Je sais exactement ce qu’il veut dire.

American Airlines a les compétences en interne pour avoir un site intéressant, mais ne les utilise pas. Un problème politique ? Je pense aussi.

La peur du vide ?

C’est sans doute la crainte des grosses entreprises d’avoir un site aussi aéré et léger, avec peu de contenu. Ils se disent peut-être qu’avec tout leur argent et la taille du trafic du site, ils doivent forcément avoir un site avec beaucoup de fonctionnalités, de contenu, des liens partout, des promos par ci par là…

Je sais pas. Le peur d’innover ? De faire confiance aux plus jeunes ? A ceux qui savent ? A ceux dont c’est le boulot ?

Je pense sincèrement que la qualité d’un design est (quasiment) inversement proportionnelle au nombre de personnes (ignares?) qui donnent leur avis dessus. Avoir une équipe de plusieurs designers, OK. Mais lorsque les services commercial ou technique y mettent leur nez, ça commence à sentir le roussis. Chacun son taf et tout ira bien!

FPS + Réalité augmentée = ARhrrrr

Billet

La réalité augmentée, qui consite à superposer un élément virtuel 2D/3D à un élément réel, ne cesse de s’améliorer. Dernière démo en date : ce FPS qui utilise une image posée sur la table en guise de map de jeu, et permet au joueur d’inclure des éléments réels (ici des bonbons Skittles :-D ) dans la map!

* Video Games Republic

Acrobat.com : le Google Docs d’Adobe

Billet

acrobat.com

Acrobat.com sort de sa beta et devient public. Il consiste en plusieurs services :

  • Adobe Buzzword : un excellent éditeur de document en Flex. L’édition, le formatage, l’ajout de commentaires sont très bien réalisés.
  • Création de PDF : à partir d’un fichier .rtf par exemple
  • Partage de fichiers : une interface pour uploader des fichiers et envoyer une notification par mail à ses contacts
  • Adobe ConnectNow : visio-conférence, partage d’écrans, chat…
  • My Files : pour accéder à ses fichiers de n’importe où

A part Buzzword, j’avais jamais entendu parler de ce service. J’ai pas l’impression qu’il y aie eu de grosse annonce. En tout cas, Adobe marche sur les plate-bandes de Google Docs : des outils de collaboration en ligne, gestion/création de documents, partage de fichiers…

C’est en fait la concurrence Flash vs HTML/Ajax (et bientôt HTML 5).

Personnellement, je ne compte pas m’inscrire pour utiliser ce nouveau service. Il n’a pas l’air très rôdé. Et puis Google Docs me convient très bien pour ce dont j’ai besoin. Et y a le côté Google, toujours innovant, très fiable et intégrant parfaitement ses différents services (Mail,Reader,Calendar…) qui me rend fidèle.

Créer des CSS dynamiques avec LESS : un compilateur de CSS en Ruby

Billet

less-compilateur-de-css

Ca peut paraître bizarre comme outil, un “compilateur de CSS”, mais LESS est avant tout un outil pour écrire plus efficacement une CSS. Ca rend les CSS dynamiques. C’est un outil écrit en Ruby. J’en parle aussi d’ailleurs sur 29minparjour.

LESS = extension de CSS

LESS se veut être une extension de CSS parce que la syntaxe utilisée pour les fichiers .less (les fichiers source) est très proche de la syntaxe CSS. L’efficacité de cet outil consiste en 4 éléments :

  1. Variables en CSS
  2. Mixins : des includes CSS
  3. Nested Rules : une autre façon de définir des sélecteurs d’arborescence
  4. Operations : addition, soustraction, multiplication, division

Variables CSS

En utilisant des variables, on peut regrouper une valeur à un seul endroit pour pouvoir la mettre à jour facilement par la suite.

@maCouleurPrincipale: #0072bc;
a{ color:@maCouleurPrincipale;}
h1{ color:@maCouleurPrincipale;}

Mixins : des includes CSS

Dans une classe, je peux définir plusieurs propriétés puis inclure cette classe dans d’autres éléments. Ca peut s’avérer très pratique pour les propriétés CSS 3 qui ont une syntaxe différente par navigateur.

.coinsArrondis{ border-radius:5px; -moz-border-radius:5px; -webkit-border-radius:5px;}
#global{ .arrondis;}

Nested Rules

Cet outil est le moins intéressant des 4. Il permet de gagner un peu en lignes de code mais je ne le trouve pas très lisible.

#header{
background:#fff;
position:relative;
	.logo{
	position:absolute;
	right:0px;
	}
}

Au lieu d’écrire #header puis #header .logo, je mets directement .logo dans #header.

Opérations

Ca permet d’utilisation des opérations arithmétiques traditionnelles : addition, soustraction, multiplication, division. Ca peut-être pratique si on veut que les marges verticales soient le double des marges horizontales.

@marges:5px;
#global{ margin:@marges*2 @marges;}

Exemple complet

J’ai fait un exemple complet utilisant plusieurs fonctionnalités de LESS. Voici mon fichier source bbxdesign.less :

@color01:#0072bc;
@radius:10px;
.radius{ border-radius:@radius; -moz-border-radius:@radius; -webkit-border-radius:@radius;}
@margin:5px;
body{ color:#333; font-family:Georgia,serif;}
a{ color:@color01; text-decoration:none;}
#global{ background:#fff; .radius; margin:@margin @margin*2;}

Et voici le fichier généré bbxdesign.css :

.radius { -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }
a { text-decoration: none; color: #0072bc; }
body { font-family: Georgia,serif; color: #333; }
#global { -webkit-border-radius: 10px; margin: 5px 10px; background: #fff; -moz-border-radius: 10px; border-radius: 10px; }

Installation

Tout se fait en lignes de commande. Il faut avoir Ruby installé sur son ordinateur et installer la gem suivante :

gem install less

Ensuite, en navigant dans le dossier où se trouve le fichier .less, on fait :

lessc monfichier.less

Et le fichier .css est automatiquement généré avec le même nom.

Nom de fichier différent

On peut aussi choisir un autre nom pour le fichier généré :

lessc monfichier.less monautrefichier.css

Automatisation

Parce qu’un fichier CSS est souvent modifier, on peut automatiser la création du fichier .css à chaque modification du fichier .less :

lessc monfichier.less --watch

D’ailleurs, si une erreur existe dans le code, le fichier .css ne serait pas généré. Bien pratique.

Conclusion

Il existe plusieurs méthodes pour avoir des CSS dynamiques. J’en ai déjà vues en PHP ou JSP. Mais ces outils génèrent souvent les CSS à la volée, et il faut donc avoir un serveur derrière qui tourne. Ici, le fichier est “compilé” une bonne fois pour toutes.

Autre avantage : la syntaxe de LESS est très proche de la syntaxe CSS. Il est très facile de prendre une CSS existante et la transformer en fichier LESS. Ca m’a pris 2min d’ailleurs.

Après, est-ce que je vais l’utiliser au quotidien ? Ecoutez, je vais essayer.

ColoRotate : les couleurs en 3D

Billet

colorotate

Il existe pleins de générateurs de palette de couleur, notamment kuler. Ici, ColoRotate se distingue par une interface 3D où l’axe horizontal correspond à la saturation, et le vertical à la teinte. On peut aussi choisir sur une échelle de blend entre 2 couleurs. Il suffit d’utiliser le menu en bas à droite pour passer de l’un à l’autre.

* Usability Post

Demain, Opera réinvente le web

Billet

opera-freedom

Opera, peut-être le meilleur navigateur qui soit, réinvente le web demain.

Petit rappel des innovations Opera

L’annonce peut sembler prétentieuse mais je pense que c’est à prendre avec une touche d’humour. Et puis, Opera est un pionnier en termes d’innovations. Opera était le premier pour :

  • Speed Dial (2007) : une mosaïque des sites les plus visités, repris par Chrome et Safari
  • Navigation par onglets (1994) : repris et amélioré par NetCaptor en 1997, puis repris par tout le monde
  • Sessions (1996) : la possibilité de récupérer une session qui s’est crashée
  • Bloqueur de pop-ups (2000) : comment l’envisager sans aujourd’hui ?
  • Zoom entier (1996) : d’habitude un zoom n’agrandit que la taille de la police, et à moins d’avoir un design élastique (et non pas fixe ou fluide) comme ici sur bbxdesign, la structure de la page ne s’agrandit pas à moins d’avoir un zoom entier.
  • BitTorrent (2006) : un client BitTorrent intégré au navigateur
  • Suppression des données personnelles (2000) : en deux clics, on peut supprimer les cookies, le cache, l’historique, les mots de passe…
  • Mouse gestures (2001) : navigation par gestuelle de la souris

C’est quoi cette nouveauté alors ?

Je n’ai personnellement aucune idée de ce que peut être cette “réinvention du web”. Hicksdesign pense que ça sera tout internet sur une clé usb. :-)

The peer-to-peer Web

Le blog assertTrue() a une autre idée, très intéressante : Opera intègerera un serveur web. En lançant Opera, on pourra partager ses favoris, des fichiers, des contacts, des pages web… Chaque navigateur sera alors un serveur web. Ca sera du P2P mais en utilisant du HTTP.

Mmmh, ça reste une spéculation mais ça ne m’étonnerait pas et j’aimerais beaucoup voir ça!

Si je pouvais utiliser toutes mes extensions Firefox avec Opera, je serais déjà utilisateur d’Opera à plein-temps. C’est pour moi le meilleur navigateur qui soit, suivi par Chrome et Firefox. Je suis très déçu par le score que fait Opera : 3,69%.

Ok, je suis web designer, j’ai besoin d’utiliser Firefox, c’est mon outil de travail principal. Mais tous ceux qui ne font pas de web, pourquoi n’utilisent-ils pas Opera ? La cause principale c’est justement parce que les gens ne font pas de web qu’ils ne connaissent pas Opera. C’est le même problème que pour Chrome. Les gens utilisent encore IE (surtout 7 maintenant).

Il me faudrait Firebug sous Opera et je pense que je switcherais définitivement. Dragonfly a l’air pas mal. Je vais tester ça. Et demain, grosse annonce d’Opera alors!

12