Ce blog — désormais archivé — est en lecture seule. Pour continuer à lire mes tribulations, rendez-vous sur le blog d'Akei, ma société.

Prendre un Café

L'espace d'expression de Nicolas Perriault

Aller au contenu | Aller au menu | Aller à la recherche

Keyword - css

Fil des billets

lundi 1 mai 2006

Quelques extensions Firefox pratiques

mardi 25 avril 2006

J'aime les brocolis

Désolé pour le titre, j'ai plus d'imagination pour titrer les billets en vrac...

PS : ça devient vraiment n'importe quoi ces billets. Promis, bientôt je me recentre.

jeudi 20 avril 2006

Alignement vertical en CSS

Enfin ! [via]

Edit : Bon, OK, la news est moisie. Pour me venger, j'ai commandé le renouvellement de ma Freebox par une Freebox v5 HD.

mercredi 5 avril 2006

Sans chemise, sans pantalon

CSS Naked Day

Aujourd'hui, jour du CSS Naked Day, ce site est à poil tout nu. Paf.

Remarque : A quand une journée sans javascript, qu'on rigole un coup ?

Edit du lendemain : Rhabillé.

vendredi 3 mars 2006

En vrac

lundi 20 février 2006

Chantier, casque obligatoire

Comme vous l'avez sans doûte remarqué si vous n'utilisez pas un agrégateur pour lire ces quelques lignes, je suis en train de procéder au redesign de ce blog. J'en avais vraiment marre du gris. Donc j'ai mis de la couleur partout.

C'est pas fini, j'ose même pas imaginer ce que ça donne sous IE, mais j'ai l'impression que c'est un bon début. En tout cas, que je suis sur la bonne voie.

Comme d'hab, commentaires et suggestions sont les bienvenues ;)

jeudi 5 janvier 2006

Support des standards avec IE6 : c'est pas impossible

Neolao - qui devrait sérieusement commencer à penser à s'ouvrir un blog ;) - me transmet par mail une information interessante : il existe un projet de rendre IE6 à peu près respecteux des standards web et plus particulièrement des CSS. Le projet s'appelle IE7 [1], et propose sa solution sous la forme d'un certain nombre de fichiers javascript à inclure dans ses documents HTML.

Le résultat est assez convaincant, puisqu'il est alors possible d'utiliser les selecteurs et même les pseudo-classes :focus, :before, :after et consorts...

Au chapitre des inconvénients :

  • Grosse alerte de sécurité (merci le SP2) au chargement de l'objet ActiveX utilisé depuis javascript,
  • Obsolète en cas de désactivation du javascript par l'internaute.

Donc on ne tient pas encore la solution idéale, mais ça pourra peut-être aider les plus impatients à attendre la sortie de la future version 7 officielle (hahaha).

Notes

[1] Apparemment, rien à voir avec la dénomination de l'arlesienne la future version du navigateur de Microsoft...

mardi 22 novembre 2005

Animations Flash à l'échelle en CSS

Peut-être cette astuce est-elle archi connue, mais je ne l'ai jamais vue auparavant.

Peut-être avez-vous déjà voulu réaliser un modèle de mise en page scalable [1] en CSS contenant des animations Flash. Et peut-être avez-vous pesté contre l'impossibilité apparente de gérer en valeurs relatives la taille desdits objets, puisque les attributs width et height d'une balise <object> sont par définition exprimées en pixels, la largeur et la hauteur restant alors desespéremment fixes lors de l'augmentation de la taille du texte et des éléments de mise en page...

Pour remédier à ce problème, ma solution réside dans l'application de valeurs proportionnelles (exprimées en em) à l'objet Flash via CSS.

Prenons par exemple ce code XHTML affichant une animation Flash de 320px par 240px:

<object id="swf_banner" type="application/x-shockwave-flash" data="swf/ban_home.swf" width="320" height="240">
	<param name="movie" value="swf/ban_home.swf" />
	<img id="img_banner" src="swf/alt/ban_home.jpg" alt="banner" />
</object>

En appliquant les règles CSS suivantes au corps du document et à l'objet, la taille de ce dernier devient fluide !

body {
	font-size: 100%; /* Autorise le redimensionnement de texte pour MSIE */
}
html > body {
	font-size: 16px; /* Pour les autres navigateurs */
}
#swf_banner {
	width: 20em;
	height: 15em;
}

Et voila, en jouant des combinaisons de touches <Ctrl> + "+" et <Ctrl> + "-" dans Firefox [2], votre objet flash est maintenant redimensionné à l'échelle, au même titre que le reste des éléments du document dont les dimensions sont exprimées en valeurs proportionnelles.

Conversion des valeurs px en em

Mais - allez-vous me dire - comment convertir mes valeurs de taille d'objet Flash, exprimées en pixels, en valeurs proportionnelles (em) ? Pour cela, il existe une astuce consistant à définir une taille par défaut de la police de caractère du document courant, et de lui appliquer un ratio multiplicateur pour en obtenir les valeurs proportionnelles correspondantes.

Dans notre exemple, l'objet Flash fait 320 par 240 pixels. Fixons la taille de police par défaut de notre document à 16px.

body {
	font-size: 100%; /* Autorise le redimensionnement de texte pour MSIE */
}
html > body {
	font-size: 16px; /* Pour les autres navigateurs */
}

Pour calculer la hauteur de notre objet Flash en em, on effectue une simple opération :

<taille_en_pixels_du_flash> / <taille_de_police_du_body_en_pixels> = <valeur_en_em>

Soit pour la largeur :

320 / 16 = 20em

Et pour la hauteur :

240 / 16 = 15em

Note : MSIE ne permet pas par défaut le redimensionnement de police ; il faut pour cela utiliser un subterfuge, sous cette forme :

body {
	font-size: 100%; /* Autorise le redimensionnement de texte pour MSIE */
}

Opera quand à lui propose en natif le zoom à l'échelle, quelles que soient les métriques utilisées.

Pour finir, voila un exemple concret.

Notes

[1] Je suis preneur d'une traduction de ce terme :)

[2] On peut aussi utiliser la combinaison <Ctrl> + molete de la souris

- page 1 de 2