<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>css 4 design &#187; CSS</title>
	<atom:link href="http://css4design.com/tag/css/feed" rel="self" type="application/rss+xml" />
	<link>http://css4design.com</link>
	<description>Le blog de l&#039;intégrateur web</description>
	<lastBuildDate>Mon, 08 Mar 2010 14:37:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<atom:link rel='hub' href='http://css4design.com/?pushpress=hub'/>
		<item>
		<title>Framework CSS &#8212; Sémantique, maquette dynamique et autres notes</title>
		<link>http://css4design.com/framework-css-semantique-maquette-dynamique-et-autres-notes</link>
		<comments>http://css4design.com/framework-css-semantique-maquette-dynamique-et-autres-notes#comments</comments>
		<pubDate>Mon, 08 Mar 2010 07:12:41 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[Conception de site web]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Intégration web]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Edito]]></category>
		<category><![CDATA[Framework CSS]]></category>
		<category><![CDATA[Grille]]></category>
		<category><![CDATA[Maquette]]></category>
		<category><![CDATA[Mise en page]]></category>
		<category><![CDATA[Sémantique]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=5540</guid>
		<description><![CDATA[Les frameworks CSS ont fait couler beaucoup de pixels : d&#8217;un côté, ils proposent une méthode à l&#8217;épreuve des balles pour placer les blocs sur sur la page en tenant compte des contraintes cross-browser ; de l&#8217;autre, ils ajoutent des classes CSS superflues dans le code HTML pour la présentation des contenus, ce qui n&#8217;est pas jugé «sémantique» par les farouches défenseurs d&#8217;une séparation entre le fond et la forme. Voilà en gros l&#8217;avantage principal et l&#8217;inconvénient majeur qu&#8217;on peut dégager si on met de côté le faux problème du poids de ces frameworks. Après avoir donné mon point de [...]]]></description>
			<content:encoded><![CDATA[<p>Les frameworks CSS ont fait couler beaucoup de pixels : d&#8217;un côté, ils proposent une méthode à l&#8217;épreuve des balles pour placer les blocs sur sur la page en tenant compte des contraintes <em>cross-browser </em>; de l&#8217;autre, ils ajoutent des classes CSS superflues dans le code HTML pour la présentation des contenus, ce qui n&#8217;est pas jugé «sémantique» par les farouches défenseurs d&#8217;une séparation entre le fond et la forme. Voilà en gros l&#8217;avantage principal et l&#8217;inconvénient majeur qu&#8217;on peut dégager si on met de côté le faux problème du poids de ces frameworks. Après avoir donné mon point de vue sur cette question de «sémantique» j&#8217;expliquerais comment l&#8217;ajout de classes liées à la présentation dans le HTML peut s&#8217;avérer très pratique à l&#8217;heure du web «sur-mesure».<span id="more-5540"></span></p>

<h2>Comment ça marche, un framework CSS ?</h2>

<p>Le positionnement des blocs avec un framework CSS s&#8217;effectue <em>grosso modo</em> en attribuant une classe CSS pour spécifier les propriétés <code>width</code> et <code>margin</code> aux blocs avec une ou <a href="http://css4design.com/retablir-le-flux-apres-des-elements-flottants-en-css-sans-balise-html-supplementaire">plusieurs techniques pour rétablir le flux HTML</a> après les éléments possédant la propriété <code>float</code>.</p>

<p>Dans une grille en 16 colonnes, pour placer une image sur 4 colonnes et du texte sur les 12 restantes, on pourra utiliser le marquage HTML suivant (je vous fais grâce des CSS, le code HTML est assez explicite) :
<pre>&lt;div id="header" class="grid_16 clear"&gt;
    &lt;div class="grid_4"&gt;&lt;img src="/img/logo.png" /&gt;&lt;/div&gt;
    &lt;div class="grid_12 last"&gt;Mon texte sur 12 colonnes&lt;/div&gt;
&lt;/div&gt;</pre>
Pour beaucoup, les classes .<em>col_16</em> et <em>last</em> (voire même .<em>clear</em>) sont une intrusion, que dis-je, une déclaration de guerre de la forme contre le fond. Pour tout dire, je suis assez partagé moi-même sur le sujet, mais je m&#8217;accroche&#8230; J&#8217;utilise souvent la partie «grille» des <em>frameworks</em> pour mettre en place la structure des pages car j&#8217;ai déjà l&#8217;habitude de concevoir le design d&#8217;un site avec un découpage en colonnes.</p>

<p>Attention, pas forcément du <em>tout fait</em> en <em>950px</em> ou <em>960px </em>mais en déterminant le «pas» de la grille selon <strong>mes</strong> besoins. Je laisse ensuite  les fastidieux calculs à un générateur de grille, qu&#8217;il s&#8217;agisse de <a href="http://css4design.com/boks-editeur-visuel-de-grilles-css-pour-blueprint">boks</a> pour <a href="http://www.blueprintcss.org/">Blueprint</a> ou encore de <a href="http://headless-studios.com/960.ls/">960 Layout System</a> pour <a href="http://960.gs/">960.gs</a>.</p>

<h2>Un peu (ou pas) de sémantique</h2>

<p>Les classes .<em>span-4</em> ou .<em>grid_4</em> ne sont pas sémantiques dans le sens où &#8212; pour certains &#8212; elles véhiculent une notion d&#8217;apparence et non pas d&#8217;utilité, de sens. Ainsi, une classe .<em>warning </em>est préférable à une classe .<em>rouge</em> même si la couleur de .<em>warning</em> est rouge ; si on change d&#8217;avis, on aura l&#8217;air fin avec notre classe .<em>rouge</em> affichant du texte orange. L&#8217;idée, c&#8217;est d&#8217;être à la fois très précis et suffisamment générique pour s&#8217;adapter à toutes les situations.</p>

<p>Pour revenir aux classes spécifiant la largeur des colonnes, j&#8217;ai toujours pensé qu&#8217;elles apportaient du sens, un peu à l&#8217;image de la presse quotidienne où l&#8217;on met un titre sur 8 colonnes, signifiant ainsi son importance par rapport aux autres contenus (à supposer que la maquette comporte un maximum de 8 colonnes).</p>

<p>Le côté sémantique de la chose est surtout à mettre en regard des contenus à maquetter : s&#8217;ils n&#8217;ont pas de sens en eux-mêmes, toute la sémantique du monde n&#8217;y pourra rien changer :D</p>

<p>Pour finir avec cette question de sémantique, il reste la possibilité de renommer les classes .<em>span-x</em> ou .<em>grid_x</em>. En fonction de votre projet, vous pourrez utiliser des termes plus en accord avec vos contenus comme .<em>a-la-une</em> pour .<em>span-16</em>, <em>.breves</em> pour <em>.span-4</em> ou encore <em>.entrefilet</em> pour <em>.span-2</em>, etc. On peut donc considérer que des contenus auxquels on applique un .<em>span-16</em> sont plus importants que ceux auxquels ont attribut la classe .<em>span-4</em> et ainsi de suite.</p>

<p>Comme j&#8217;ai déjà eu l&#8217;occasion de le dire dans <a href="http://css4design.com/framework-css-semantique-comment-je-vois-les-choses">Framework CSS sémantique ? Comment je vois les choses</a> (et au risque de me répéter) :</p>

<blockquote>[...] la suite des <em>.span-x</em> peut se comprendre comme l’importance accordées à chaque bloc : du moins important (<em>.span-1</em>) au plus important (<em>.span-24</em>), à l’image de la presse écrite où un article surmonté d’un titre en «8 colonnes à Une» mérite plus d’attention qu’un entrefilet sur 2 colonnes.</blockquote>

<h2>Les avantages des frameworks CSS</h2>

<h3>Standardiser les méthodes de travail</h3>

<p>Quand plusieurs personnes interviennent sur le code HTML pour placer ou déplacer des éléments (ex. supprimer ou ajouter une sidebar, un bloc de contenu, etc.) il vaut mieux avoir un jeu de classes CSS (issus d&#8217;un framework ou non, d&#8217;ailleurs) pour éviter que chaque intervenant bidouille le fichier CSS avec sa «méthode» : certains sont adeptes des <code>position: absolute</code>, d&#8217;autres raffolent des <code>float: left</code>, d&#8217;autres des <code>table</code>, etc. Avec des classes standardisées comme <em>span-x</em>, <em>last</em> et les <em>clearfix</em> qui vont avec, tout devient plus simple et cohérent.</p>

<h3>Des maquettes dynamiques côté serveur ou client grâce aux grilles</h3>

<p>Autre argument qui milite en faveur de la mise en place d&#8217;une grille avec un framework, c&#8217;est qu&#8217;en travaillant de cette manière, il devient possible de modifier dynamiquement la mise en page côté serveur avec PHP ou côté client avec Javascript.</p>

<p>Pour distribuer votre contenu sur 4 colonnes au lieu de 8, il suffira de modifier tout ou partie du nom de la classe utilisée (le «4» de col_4 par «8», par exemple) sans être obligé d&#8217;intervenir sur la feuille de style ou d&#8217;en charger une autre à la volée.</p>

<h3>Frameworks PHP, Javascript et pourquoi pas CSS ?</h3>

<p>Les critiques concernant les frameworks CSS sont souvent les mêmes que celles qui ont été faites contre les frameworks PHP ou Javascript avant que leur utilisation se généralise. Pour illustrer mon propos, voici un extrait de l&#8217;intervention de <a href="http://www.appli-box.com/">Didier Galland</a> sur <a href="http://groups.google.com/group/webdevfr?hl=fr">WebDevFr</a> à propos de l&#8217;industrialisation de l&#8217;intégration web :</p>

<blockquote>On a tenu exactement le même discours à propos de PHP, puis à propos de javascript. Les frameworks dans ces deux domaines ont largement prouvé qu&#8217;ils permettaient des améliorations. Je ne vois pas pourquoi l&#8217;intégration (css/html + javascript) ne pourrait pas bénéficier des mêmes améliorations. On a le droit d&#8217;utiliser son framework personnel dans son coin,  mais pour le bien de mon agence, je ne peux pas bloquer mes futures évolutions (en personne ou en techniques) à cause de cette attitude, j&#8217;aurais donc forcément tendance à privilégier un professionnel au courant de ces techniques dans mes recrutements ou mes contracteurs freelances.</blockquote>

<h3>Aller au bout de la logique du reset CSS</h3>

<p>Tout le monde connait le <a href="http://meyerweb.com/eric/tools/css/reset/">reset CSS d&#8217;Eric Meyer</a> que l&#8217;on trouve dans de nombreux framework. Quand on y réfléchit cinq minutes, la suite logique de ce reset, c&#8217;est le frameworks. Il faut bien voir que la plupart d&#8217;entre eux ne sont pas spécialement très lourds et quand on fait le compte des déclarations redondantes qui se trouvent dans une feuille de style un peu touffue (parce qu&#8217;évidement, si votre projet tient en 20 lignes de CSS, c&#8217;est peut-être pas la peine de se poser la question), on se rend compte que les frameworks ne sont pas si gourmands.</p>

<h3>Remplacer les styles par défaut des navigateurs</h3>

<p>J&#8217;ai toujours trouvé que les styles par défaut appliqués par les navigateurs manquait d&#8217;originalité et de <em>peps</em>. Il suffit de mettre un soupçon de <a href="http://code.google.com/p/css-boilerplate/">Boilerplate </a>ou de <a href="http://csswizardry.com/typogridphy/">Typogridfy </a>pour que de très banal, la mise en page par défaut prenne un coup de jeune et de modernité !</p>

<h2><strong>Comment déterminer le «pas de la grille»</strong></h2>

<p>Un argument récurrent qui va à l&#8217;encontre de l&#8217;utilisation des grilles concerne la partie conception graphique. Les grilles entraveraient la créativité. Pourquoi pas. Mais je mets au défi quiconque de proposer un design de site web qui ne rentrerait pas dans une grille. Une grille n&#8217;est pas forcément synonyme de 12, 16 ou 24 colonnes. Il peut s&#8217;agir de 2, 4, 6 ou 8 colonnes et pourquoi pas d&#8217;un nombre impair de colonnes comme 1 colonne (un peu le degré zéro de la grille, mais bon&#8230;), 3 ou 5 colonnes pour bénéficier d&#8217;une asymétrie créative ? Tout est possible.</p>

<p>Pour aller au plus simple, si l&#8217;on veut un site avec un bloc de contenu et une barre latérale, on pourra diviser la page en 3 parties pour obtenir les ratios 2/3 pour le contenu principal et 1/3 pour la sidebar ou en 4 parties, soit 3/4 pour le contenu principal et 1/4 pour la barre latérale. On pourra se baser sur les proportions 1/3 ou 1/4 pour la largeur des images accompagnant les textes.</p>

<p>Ensuite, rien n&#8217;empêche de diviser chaque colonne en plusieurs parties pour granulariser l&#8217;information selon les besoins : affichage de miniatures, etc. Celà permet d&#8217;obtenir une mise en page très simple tout en bénéficiant d&#8217;une système de grille souple et efficace.</p>

<h2>Quelques liens à propos des frameworks et des reset CSS</h2>

<ul>
    <li><a href="http://css4design.com/choisir-un-frameworks-css">24 frameworks CSS — Mettez une grille (ou pas) dans votre site web</a></li>
    <li><a href="http://css4design.com/frameworks-css-reset-css-design-from-scratch">Frameworks CSS + Reset CSS : design from scratch</a></li>
    <li><a href="http://css4design.com/quelques-notes-sur-les-grilles-de-mise-en-page">Quelques notes sur les grilles de mise en page</a></li>
    <li><a href="http://css4design.com/grid-design-quelques-notes-sur-linteret-des-grilles-de-mise-en-page">Grid Design — Quelques notes sur l’intérêt des grilles de mise en page</a></li>
    <li><a href="http://css4design.com/framework-css-semantique-comment-je-vois-les-choses">Framework CSS sémantique ? Comment je vois les choses</a></li>
    <li><a href="http://css4design.com/framework-css-mettez-vos-grilles-au-pas">Framework CSS — mettez vos grilles au pas !</a></li>
    <li><a href="http://css4design.com/nombre-d-or-suite-de-fibonacci-et-autres-grilles-de-mise-en-page-pour-le-design-web">Nombre d’or, suite de Fibonacci et autres grilles de mise en page pour le design web</a></li>
    <li><a rel="bookmark" href="http://css4design.com/apres-reset-reloaded-eric-meyer-fait-risette-avec-resetting-again">Styles CSS par défaut : après Reset Reloaded, Eric Meyer fait encore risette avec Resetting Again</a></li>
    <li><a rel="bookmark" href="http://css4design.com/5-reset-css-a-la-loupe-pour-une-remise-a-zero-des-valeurs-par-defaut-des-navigateurs">5 Reset CSS à la loupe pour une remise à zéro des valeurs par défaut des navigateurs</a></li>
</ul>

<h2>Pas de conclusion hâtive !</h2>

<p>Je pense que j&#8217;aurais l&#8217;occasion de revenir sur ces questions (oui encore) notamment sur la partie grille et créativité qui semble passionner beaucoup de monde à juste titre. N&#8217;hésitez pas à partager vos expériences en la matière. A bientôt !</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/framework-css-semantique-maquette-dynamique-et-autres-notes/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Générateur de coins arrondis avec border-radius</title>
		<link>http://css4design.com/generateur-de-coins-arrondis-avec-border-radius</link>
		<comments>http://css4design.com/generateur-de-coins-arrondis-avec-border-radius#comments</comments>
		<pubDate>Fri, 05 Mar 2010 05:28:08 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Navigateurs]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Border-radius]]></category>
		<category><![CDATA[Camino]]></category>
		<category><![CDATA[Coins arrondis]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Gecko]]></category>
		<category><![CDATA[Générateur]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[Safari]]></category>
		<category><![CDATA[Webkit]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=5598</guid>
		<description><![CDATA[La propriété CSS3 border-radius permet de faire des coins arrondis pour rendre nos pages web plus jolies à regarder. Tous les navigateurs ne prennent pas en charge la propriété CSS3 border-radius : les agents utilisateurs carburant au moteur de rendu Webkit (Chrome, Safari, iPhone, Android) utilisent -webkit-border-radius et ceux qui tournent sur Gecko (Firefox, Camino) utilisent -moz-border-radius. Quant à Internet Explorer, on peut garder l&#8217;espoir qu&#8217;avec IE9 ont verra un peu de lumière au bout du tunnel&#8230; 

Pour assurer une compatibilité maximum, il faut utiliser plein de déclarations CSS redondantes et c&#8217;est fastidieux. Heureusement, jacob bijani (Directeur de la création [...]]]></description>
			<content:encoded><![CDATA[<p>La propriété CSS3 <code>border-radius</code> permet de faire des coins arrondis pour rendre nos pages web plus jolies à regarder. Tous les navigateurs ne prennent pas en charge la propriété CSS3 <code>border-radius</code> : les agents utilisateurs carburant au moteur de rendu <a href="http://fr.wikipedia.org/wiki/WebKit">Webkit</a> (Chrome, Safari, iPhone, Android) utilisent <code>-webkit-border-radius</code> et ceux qui tournent sur <a href="http://fr.wikipedia.org/wiki/Gecko_(moteur_de_rendu)">Gecko</a> (Firefox, Camino) utilisent <code>-moz-border-radius</code>. Quant à Internet Explorer, on peut garder l&#8217;espoir qu&#8217;avec IE9 ont verra un peu de lumière au bout du tunnel&#8230; <span id="more-5598"></span></p>

<p>Pour assurer une compatibilité maximum, il faut utiliser plein de déclarations CSS redondantes et c&#8217;est fastidieux. Heureusement, <a href="http://jacobbijani.com/">jacob bijani</a> (Directeur de la création de <a href="http://www.tumblr.com/">Tumblr</a> et à l&#8217;origine de <a href="http://start.io/">start.io</a>) a développé un générateur de coins arrondis qui s&#8217;appelle&#8230; <a href="http://border-radius.com/">border-radius.com</a> ;)</p>

<h2>Des coins arrondis différents à chaque angle</h2>

<h6>Il est possible de spécifier les coins arrondis pour Webkit, Gecko et CSS3 en cochant les cases appropriées</h6>

<div id="attachment_5599" class="wp-caption alignleft" style="width: 444px"><a href="http://css4design.com/wp-content/uploads/2010/03/border-radius-css3.jpg"><img class="size-large wp-image-5599" title="border-radius-css3" src="http://css4design.com/wp-content/uploads/2010/03/border-radius-css3-434x259.jpg" alt="" width="434" height="259" /></a><p class="wp-caption-text">Un générateur de coins arrondis en CSS3</p></div>

<h2>Exemple de coins arrondis en haut mais pas en bas</h2>

<p><pre>.roundies-top {
    -moz-border-radius: 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0;
    -webkit-border-top-left-radius: 5px; /* pour Chrome <em>/
    -webkit-border-top-right-radius: 5px; /</em> pour Chrome */
    border-radius: 5px 5px 0 0;
}</pre></p>

<p class="small">Google Chrome n&#8217;accepte pas les raccourcis : il faut ajouter explicitement chaque coins arrondis.</p>

<h2>Exemple de coins arrondis identiques</h2>

<p>Le générateur n&#8217;utilise pas la syntaxe raccourcie qui permet de gagner quelques lignes. Pour avoir des coins arrondis identiques pour les 4 angles avec une écriture plus concise on peut utiliser :
<pre>.rounded-all {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}</pre></p>

<h2>Pour terminer</h2>

<p>Je vous conseille la lecture de <a href="http://www.alsacreations.com/tuto/lire/891-coins-arrondis-css-sans-images.html">Créer des coins arrondis en CSS et sans images</a> pour plus d&#8217;informations, notamment en ce qui concerne Internet Explorer avec du Javascript et du composant <code>.htc</code> en veux-tu en voilà !</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/generateur-de-coins-arrondis-avec-border-radius/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Wordpress &#8212; Menus «funky» avec wp_list_bookmarks()</title>
		<link>http://css4design.com/wordpress-menu-funky-avec-wp_list_bookmarks</link>
		<comments>http://css4design.com/wordpress-menu-funky-avec-wp_list_bookmarks#comments</comments>
		<pubDate>Wed, 24 Feb 2010 18:56:47 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[Content Management System]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Menu]]></category>
		<category><![CDATA[Navigation]]></category>
		<category><![CDATA[Système de gestion de contenu (CMS)]]></category>
		<category><![CDATA[Template]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=5410</guid>
		<description><![CDATA[Wordpress est un CMS formidable, ce qui ne l&#8217;empêche pas d&#8217;avoir des lacunes. L&#8217;une d&#8217;elle concerne la possibilité de construire des menus composés de liens vers des pages ou des articles publiés sur le blog, ce qui est courant avec des CMS comme Drupal ou Joomla. En général, je me contente de créer mon menu en HTML et ça fonctionne très bien. Toutefois, cette solution n&#8217;est pas toujours très évidente à maintenir. Voici la solution que j&#8217;ai retenue pour la mise en place des liens pointant vers les articles que je souhaitais mettre en avant sur ce blog.

La fonction wp_list_bookmarks()

La [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://css4design.com/dites-wordpress-pas-weirdpress">Wordpress est un CMS formidable</a>, ce qui ne l&#8217;empêche pas d&#8217;<a href="http://css4design.com/que-manque-t-il-a-wordpress">avoir des lacunes</a>. L&#8217;une d&#8217;elle concerne la possibilité de construire des menus composés de liens vers des pages ou des articles publiés sur le blog, ce qui est courant avec des CMS comme <a href="http://drupalfr.org/">Drupal</a> ou <a href="http://www.joomla.fr/">Joomla</a>. En général, je me contente de créer mon menu en HTML et ça fonctionne très bien. Toutefois, cette solution n&#8217;est pas toujours très évidente à maintenir. Voici la solution que j&#8217;ai retenue pour la mise en place des liens pointant vers les articles que je souhaitais mettre en avant sur ce blog.<span id="more-5410"></span></p>

<h2>La fonction wp_list_bookmarks()</h2>

<p>La fonction <a href="http://codex.wordpress.org/Template_Tags/wp_list_bookmarks">wp_list_bookmarks()</a> possède plusieurs arguments intéressants dont l&#8217;identifiant de la catégorie à afficher <em>category=386</em> et <em>before</em> et <em>after</em> qui permettent de spécifier les balises HTML que vous voulez avant et après chaque élément de liste. Par défaut, il s&#8217;agit de la balise <code>li</code>. Toutefois, pour une bonne gestion des coins arrondis, j&#8217;ai ajouté une balise <code>p</code> (oui, un <code>p</code> dans le <code>li</code>, ça manque d&#8217;élégance&#8230; ), ce qui oblige à préciser explicitement les balises <code>li</code>.
<pre>&lt;div id="featured-posts" class="wrapper"&gt;
    &lt;ul&gt;
        &lt;?php echo wp_list_bookmarks('title_li=&amp;categorize=0&amp;category=386&amp;before=&lt;li&gt;&lt;p&gt;&amp;after=&lt;/p&gt;&lt;/li&gt;'); ?&gt;
    &lt;/ul&gt;
&lt;/div&gt;</pre></p>

<h2>Une pincée de CSS3 pour épicer le menu</h2>

<p><pre>&#35;featured-posts ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
&#35;featured-posts li {
    float: left;
    width: 102px;
    margin-right: 18px;
}
&#35;featured-posts li:hover {
    background: #2F0615;
    color: #fff;
/*
* Coins arrondis
<em>/
    -moz-border-radius: 5px 0 5px 0;
    -webkit-border-radius: 5px 0 5px 0;
    border-radius: 5px 0 5px 0;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    -webkit-border-bottom-right-radius: 5px;
/</em>
* Ombres portées
*/
    -webkit-box-shadow: #aaa 3px 3px 3px;
    -moz-box-shadow: #aaa 3px 3px 3px;
    box-shadow: #aaa 3px 3px 3px;
}</pre>
En fonction de la <a href="http://css4design.com/css-4-design-nouvelle-charte-graphique-et-redesign-du-logo">grille de mise en page</a> que j&#8217;ai mise en place sur ce blog, j&#8217;ai opté pour l&#8217;affichage de 8 liens occupant chacun 2 colonnes sur les 16 disponibles. Si vous voulez disposer d&#8217;un deuxième menu comme celui que j&#8217;ai ajouté dans mon pied de page, il suffit de dupliquer la fonction wp_list_bookmarks, de changer l&#8217;<code>id</code> de la catégorie des liens et de remplacer <code>#featured-posts</code> par <code>.featured-posts</code> <em>and the cat&#8217;s in the bag!</em></p>

<p class="small">Note : si vous aviez déjà utilisé le <em>Widget Liens</em> dans votre barre latérale, cette catégorie est affichée deux fois. Pour la supprimer de votre <em>blogroll</em> faites glisser le <em>Widget Liens</em>, sélectionnez la catégorie dans le menu déroulant et répétez l&#8217;opération autant de fois que nécessaire.</p>

<h2>Pour finir</h2>

<p>Oui,  toutes ces opérations sont un peu fastidieuses, mais je n&#8217;ai pas encore trouvé mieux à part attendre la sortie prochaine de Wordpress 3.0. D&#8217;ailleurs, à ce propos, je vous propose de lire l&#8217;article <a href="http://www.wordpress-fr.net/blog/les-menus-lintegration-de-mu-et-une-course-aux-correctifs">Les menus, l’intégration de MU, et une course aux correctifs !</a> de Xavier Borderie sur <a href="http://www.wordpress-fr.net/blog/">Wordpress Francophone</a> qui parle notamment de l&#8217;intégration prochaine d&#8217;une fonctionnalités permettant de faire des menus en veux-tu en voilà !</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/wordpress-menu-funky-avec-wp_list_bookmarks/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>24 frameworks CSS &#8212; Mettez une grille (ou pas) dans votre site web</title>
		<link>http://css4design.com/choisir-un-frameworks-css</link>
		<comments>http://css4design.com/choisir-un-frameworks-css#comments</comments>
		<pubDate>Wed, 10 Feb 2010 00:45:51 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[Conception de site web]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Colonnes]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Edito]]></category>
		<category><![CDATA[Framework CSS]]></category>
		<category><![CDATA[Gouttière]]></category>
		<category><![CDATA[typographie]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=4781</guid>
		<description><![CDATA[Il existe de nombreuses raisons pour ne pas utiliser de frameworks CSS lors de la phase de conception ou d&#8217;intégration de votre site web : le poids, l&#8217;intrusion des classes CSS dans le code HTML qui devient la règle pour placer le moindre bloc de contenu, le fait que de nombreuses règles ne sont pas utilisées, etc. Pour ma part, j&#8217;aime bien tester les frameworks qui tombent à portée de souris, et je n&#8217;hésite pas à faire des expériences d&#8217;hybridation : rien de tel qu&#8217;un bout de reset CSS d&#8217;Eric Meyer avec la feuille de style de typogridphy, le tout [...]]]></description>
			<content:encoded><![CDATA[<p>Il existe de nombreuses raisons pour ne pas utiliser de <a href="http://css4design.com/frameworks-css-reset-css-design-from-scratch">frameworks CSS</a> lors de la phase de conception ou d&#8217;intégration de votre site web : le poids, l&#8217;intrusion des classes CSS dans le code HTML qui devient la règle pour placer le moindre bloc de contenu, le fait que de nombreuses règles ne sont pas utilisées, etc. Pour ma part, j&#8217;aime bien tester les frameworks qui tombent à portée de souris, et je n&#8217;hésite pas à faire des expériences d&#8217;hybridation : rien de tel qu&#8217;un bout de <a href="http://meyerweb.com/eric/tools/css/reset/">reset CSS</a> d&#8217;Eric Meyer avec la feuille de style de <a href="http://csswizardry.com/typogridphy/">typogridphy</a>, le tout mis en forme avec la robustesse de <a href="http://www.blueprintcss.org/">Blueprint</a>.<span id="more-4781"></span></p>

<dl>
<dt><a href="http://www.52framework.com/">52Framework</a></dt>
<dd>Ce framework est résoluement tourné vers l&#8217;avenir en utilisant HTML5 avec <code>header</code>, <code>nav</code>, <code>section</code>, <code>article</code>, <code>footer</code> et CSS3 avec le sélecteur <code>::selection</code>, les coins arrondis, les ombres portées pour le texte ou les blocs. La grille est composée de 16 colonnes de 52 pixels chacune séparées par une gouttière de 8 pixels. Les fichiers CSS de <em>52Framework</em> vont à l&#8217;essentiel et si je préfère le système de grille de Blueprint, ça vaut le coup de de s&#8217;inspirer de <em>reset.css</em> (avec les nouvelles balises HTML5) et de <em>general.css</em> pour avoir des éléments de formulaires avec des coins arrondis et des ombres portées.</dd>

<dt><a href="http://elements.projectdesigns.org/">Element CSS Framework</a></dt>
<dd>Ce framework propose un environement global pour créer un site web avec un ensemble de dossiers prêts à être remplis : <em>/clientFiles</em>, <em>/concepts</em>, <em>/copy</em>, <em>/js</em>,  etc. et d&#8217;autres contenant les éléments de base du framework comme <em>/css</em> (qui contient les fichiers du framework proprement dit) et <em>/﻿elementsImages</em> qui contient les icônes qui accompagnent <em>externalLinks.css.</em> Ces deux derniers éléments faisant tout le charme de ce framework en fournissant des classes CSS et des icônes pour représenter les liens externes.</dd>

<dt><a href="http://baselinecss.com/">Baseline CSS</a></dt>
<dd>Aligner des lignes comportant des textes de tailless différentes n&#8217;est pas toujours facile et c&#8217;est l&#8217;objectif de ce framework moderne (oui, ça veut dire qu&#8217;il y a un soupçon de HTML5et de CSS3 dedans). Notez que la compatibilité avec IE6 n&#8217;est pas garantie. Au menu : un reset CSS avec certaines des nouvelles balises HTML5 (mais curieusement avec des balises HTML dépréciées également), un système de grille, des styles de formulaires et un peu de  typographie pour terminer.</dd>

<dt><a href="http://960.gs/">960.gs</a></dt>
<dd>Ce système de grille est conçu pour fluidifier votre chaine de production avec des dimensions communément utilisées à partir d&#8217;une largeur de 960 pixels. Existe en deux parfums : 12, 16 ou 24 colonnes. Des classes comme <code>push_XX</code> ou <code>pull_XX</code> permettent de réarranger les blocs indépendamment de leur ordre d&#8217;apparition dans le code HTML. Un <a href="http://www.spry-soft.com/grids/">générateur de grille</a> personnalisée permet de spécifier la largeur et le nombre des colonnes et la taille de la gouttière. Il existe même un <a href="http://headless-studios.com/960.ls/">générateur de blocs</a> permettant de définir votre mise en page .</dd>

<dt><a href="http://devkick.com/lab/tripoli/">tripoli</a></dt>
<dd>Redéfinit une feuille de style par défaut pour les balises HTML de manière à assurer un rendu identique sur les navigateurs présents sur le marché. Propose de nombreux fichiers additionnels comme <code>layout.css</code> pour la grille ou <code>negative.css</code> pour inverses les contrastes, etc.</dd>

<dt><a href="http://www.yaml.de/en/">yaml</a></dt>
<dd><em>Yet Another Multicolumn Layout</em> est un framework (x)html/css pour la création de maquettes robustes et flexibles centré sur la légèreté et l&#8217;accessibilité. Propose un générateur WYSIWYG <a href="http://builder.yaml.de/">YAML Builder</a> pour construire votre mise en page.</dd>

<dt><a href="http://bluetrip.org/">bluetrip</a></dt>
<dd>Le meilleur de <em>Blueprint</em> et de <em>Tripoli</em> avec un zeste de <em>Hartija</em> pour la feuille de style à l&#8217;impression, la simplicité de <em>960 Grid System</em>. Le fichier screen.css regroupe le reset CSS d&#8217;Eric Meyer, le système de grille, la gestion des liens externes (icône selon l&#8217;extension ou la destination) et de l&#8217;inversion des contraste, plus des styles pratiques pour la gestion des textes.</dd>

<dt><a href="http://csswizardry.com/typogridphy/">typogridphy</a></dt>
<dd>Basé sur <em>960 Grid System</em>, ce framework permet de créer des grilles flexibles d&#8217;une grande beauté typographique.</dd>

<dt><a href="https://developer.yahoo.com/yui/grids/">yui grids</a></dt>
<dd>Offre un jeu prédéfinit de largeur de page comprenant six <em>templates</em> avec la possibilité de subdiviser les blocs. Au total c&#8217;est plus de 1 000 combinaisons de maquettes pour seulement <em>4kb</em>.</dd>

<dt><a href="http://elasticss.com/">elasticss</a></dt>
<dd>Basé sur des techniques de colonnage traditionnel en 4 colonnes, ce framework permet de multiples combinaisons et subdivisions. Il se distingue des autres par sa capacité à produire facilement des design fixes, liquides ou élastiques.</dd>

<dt><a href="http://sencss.kilianvalkhof.com/">sencss</a></dt>
<dd>Un frameword <em>zen</em> qui ne vous obligera pas à adopter un système de grille particulier mais qui fournit plutôt un ensemble de styles pour les parties les plus répétitives de votre travail sans trop s&#8217;éloigner du style par défaut des navigateurs. Grille verticale en 18 pixels. Fournit des jeux de polices de caractères spécifiques pour Windows, Mac et Linux.</dd>

<dt><a href="http://code.google.com/p/the-golden-grid/">the golden grid</a></dt>
<dd>Ce système de grille est le fruit d&#8217;une recherche constante de la grille parfaite : rien de tel que le <a href="http://css4design.com/nombre-dor-suite-de-fibonacci-et-autres-grilles-de-mise-en-page-pour-le-design-web">nombre d&#8217;Or</a> pour se rapprocher des dieux !</dd>

<dt><a href="http://code.google.com/p/css-boilerplate/">css-boilerplate</a></dt>
<dd>Par l&#8217;un des créateurs de <em>Blueprint</em> qui a décidé de se remettre à l&#8217;ouvrage pour aboutir à un framework qui ne vous obligera plus à choisir entre sémantique et efficacité : c&#8217;est vous qui décidez d&#8217;utiliser <code>float: left; width: 240px; margin-right: 110px</code> ou <code>class="column span-2 append-1"</code> !</dd>

<dt><a href="http://dev.pockyworld.com/developpement/css/bic-le-framework-css-arrive-en-271.html">BIC</a></dt>
<dd>De bonnes idées en ce qui concerne le traitement de la typographie et de la couleur (typography.css et color.css). Cf. <a href="http://www.css4design.com/blog/bic-framework-css-oriente-couleur-et-typographie">BIC, un framework orienté couleur et typographie</a>.</dd>

<dt><a href="http://giz404.freecontrib.org/bungee/">bungee</a></dt>
<dd>Propose une grille de 12 colonnes dont la plus petite subdivision vaut 4em. Pour les nostalgiques des pixels, ça fait environ 64px. Avec un niveau de zoom par défaut, un site construit avec Bungee mesure 768px de large, et s&#8217;affiche donc parfaitement sur un écran de faible résolution.w</dd>

<dt><a href="http://code.google.com/p/sparkl/">sparkl</a></dt>
<dd>Combine un <a href="http://www.css4design.com/blog/sandbox-un-theme-wordpress-pour-integrateurs-html-chic-qui-aiment-les-microformats">marquage HTML CHIC</a> (Code HTML Intrinsèquement Classe &#8212; POSH en anglais) et du<a href="http://www.css4design.com/blog/framework-jquery-pour-ecrire-du-javascript-non-intrusif"> javascript non-intrusif</a> pour créer des sites web à l&#8217;épreuve des balles et conformes aux Standards. Ce framework CSS très modulaire vous permettra de vous concentrer sur vos besoins.</dd>

<dt><a href="http://code.google.com/p/hartija/">hartija</a></dt>
<dd>Regroupe les meilleures pratiques en matière de feuille de style destinées à l&#8217;impression.</dd>

<dt><a href="http://www.1kbgrid.com">The 1Kb CSS Grid</a></dt>
<dd>Une grille minimaliste qui tient en une quinzaine de déclarations CSS idéale pour les débutant qui veulent comprendre le principe général des frameworks et pour les intégrateurs aguerris qui verront là un moyen économique de donner un rythme horizontal à leur mise en page. Choix du nombre de colonnes, de la gouttière et de la largeur totale avant le téléchargement.</dd>

<dt><a href="http://www.vcarrer.com/2009/06/1-line-css-grid-framework.html">1 line CSS Grid Framework</a></dt>
<dd>Vous avez bien lu, il s&#8217;agit d&#8217;un framework qui tient en une seule déclaration <code>.dp50 {width:50%; float:left; display: inline; *margin-right:-1px; }</code> Etonnant, non ?</dd>

<dt><a href="http://code.google.com/p/emastic/">emastic</a></dt>
<dd>Très complète, cette bibliothèque CSS s&#8217;utilise aussi bien avec des <code>em</code> qu&#8217;avec des <code>%</code> et s&#8217;accommode de largeur fixes ou fluides pour un poids de <em>4Kb</em> pour la version compressée. Nombreuses démonstrations disponibles pour voir ce qu&#8217;il est possible de faire.</dd>

<dt><a href="http://code.google.com/p/malo/">malo</a></dt>
<dd>Petit frère de <em>emastic</em>, <em>malo</em> se distingue par sa légèreté au service d&#8217;une grille en pourcentage.</dd>

<dt><a href="http://code.google.com/p/logicss/">logicss</a></dt>
<dd>basé sur le principe d&#8217;un rendu homogène entre les navigateurs sans <a href="http://www.css4design.com/blog/5-reset-css-a-la-loupe-pour-une-remise-a-zero-des-valeurs-par-defaut-des-navigateurs">reset CSS</a>. Travail sur la typographie avec des jeux de polices de caractères harmonieux, des possibilités de redimensionnements de texte et un rythme vertical. Trois systèmes de grilles très souples personnalisables à l&#8217;aide d&#8217;une boite à outils. Design élastique avec l&#8217;unité <code>em</code>, liquide via les pourcentages <code>%</code> ou fixe avec les <code>px</code>.</dd>

<dt><a href="http://kailoon.com/mycss-grid-system/">MyCSS Grid System</a></dt>
<dd>Système de grille en 960px avec une utilisation du nombre d&#8217;or pour obtenir des proportions harmonieuses. Assez verbeux dans le nombre de classes pour placer des éléments.</dd>

<dt><a href="http://www.contentwithstyle.co.uk/content/a-css-framework">A CSS Framework</a></dt>
<dd>Cet ensemble de fichiers CSS propose des maquettes prêtes à l&#8217;emploi en 1, 2 ou 3 colonnes avec un <em>header</em>, <em>footer</em>, <em>sidebar</em> et <em>navigation</em> horizontale ou verticale. Un fichier <em>framework.html</em> est disponible pour commencer.</dd>
</dl>

<h2>Conclusion</h2>

<p>Avec le temps, j&#8217;ai tendance à me passer du &laquo; tout framework &raquo; en production : ils sont très pratiques lors de la phase de prototypage, mais il faut savoir s&#8217;en passer quand le site web est calé. Je prends le temps de supprimer les classes requises par le <em>framework</em> pour les remplacer par les déclarations CSS adéquates :</p>

<pre><code>#content {
    width: 160px;
    float: left;
    margin-right: 18px;
}
</code></pre>

<p>au lieu de :</p>

<pre><code>&lt;div id="content" class="span-2"&gt;&lt;/div&gt;
</code></pre>

<p><strong>PS :</strong> Cette liste est une version réactualisée de celle que j&#8217;ai <strong>déjà publiée en juin 2009</strong> à la fin de l&#8217;article <a href="http://css4design.com/framework-css-mettez-vos-grilles-au-pas">Frameworks CSS, mettez vos grilles au pas !</a>. Toute ressemblance avec des listes de frameworks CSS publiées ces derniers temps, bla bla bla&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/choisir-un-frameworks-css/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>CleverCSS &#8212; Mettez un Python dans vos CSS</title>
		<link>http://css4design.com/clevercss-mettez-un-python-dans-vos-css</link>
		<comments>http://css4design.com/clevercss-mettez-un-python-dans-vos-css#comments</comments>
		<pubDate>Fri, 05 Feb 2010 17:10:32 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Intégration web]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Optimisation]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=5169</guid>
		<description><![CDATA[CleverCSS est une manière de produire des CSS inspirée par le langage de programmation Python : les accolades sont remplacées par l&#8217;indentation des différentes règles CSS et les déclarations sont introduites par le signe deux-points. Jusque-là, rien de bien fou, mais CleverCSS ne s&#8217;arrête pas à l&#8217;économie de quelques signes et propose de nombreuses améliorations à CSS  : de l&#8217;optimisation de la syntaxe à l&#8217;utilisation des constantes en passant par le calcul sur les valeurs, y compris les couleurs.

Référence

a:
    &#38;:hover:
      color: red
    &#38;:visited:
      color: [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://sandbox.pocoo.org/clevercss/">CleverCSS</a> est une manière de produire des CSS inspirée par le langage de programmation <a href="http://www.python.org/">Python</a> : les accolades sont remplacées par l&#8217;indentation des différentes règles CSS et les déclarations sont introduites par le signe deux-points. Jusque-là, rien de bien fou, mais <em>CleverCSS</em> ne s&#8217;arrête pas à l&#8217;économie de quelques signes et propose de nombreuses améliorations à CSS  : de l&#8217;optimisation de la syntaxe à l&#8217;utilisation des constantes en passant par le calcul sur les valeurs, y compris les couleurs.<span id="more-5169"></span></p>

<h2>Référence</h2>

<p><pre>a:
    &amp;:hover:
      color: red
    &amp;:visited:
      color: blue</pre></p>

<h2>Attributs</h2>

<p><pre>&#35;main p:
    font-&gt;
      family: Verdana, sans-serif
      size: 1.1em
      style: italic</pre></p>

<h2>Constantes</h2>

<p><pre>background_color = #ccc</p>

<p>&#35;main:
  background-color: $background_color</pre></p>

<h2>Calcul sur les valeurs</h2>

<p><pre>&#35;fff - &#35;ccc            -&gt; &#35;333333
cornflowerblue - coral   -&gt; &#35;00169d
crimson - 20             -&gt; &#35;c80028
10px * 2                 -&gt; 20px</pre></p>

<h2>Faudrait pas que le python étouffe l&#8217;éléphant ;)</h2>

<p><em>cleverCSS</em> est très séduisant et la seule chose que l&#8217;on peut lui reprocher est d&#8217;être un script Python et non PHP !</p>

<p><strong>Notes :</strong> il existe des scripts dans d&#8217;autres langages comme Ruby ou PHP :</p>

<ul>
    <li><a href="http://www.shauninman.com/archive/2008/05/30/check_out_css_cacheer">CSS Cacheer</a> (PHP)</li>
    <li><a href="http://lesscss.org/">LESS</a> (Ruby)</li>
    <li><a href="http://css4design.com/feuille-de-style-css-dynamique-avec-php">ALAMANO</a> ;) (PHP)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/clevercss-mettez-un-python-dans-vos-css/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>10 conseils pour améliorer votre feuille de style CSS « print »</title>
		<link>http://css4design.com/10-conseils-pour-ameliorer-votre-feuille-de-style-css-print</link>
		<comments>http://css4design.com/10-conseils-pour-ameliorer-votre-feuille-de-style-css-print#comments</comments>
		<pubDate>Mon, 01 Feb 2010 20:52:46 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Intégration web]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Feuille de style]]></category>
		<category><![CDATA[Impression]]></category>
		<category><![CDATA[Print]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=5108</guid>
		<description><![CDATA[Les feuilles de style réservées à l&#8217;impression sont souvent oubliées alors qu&#8217;elles offrent de grands services pour tous ceux qui impriment les pages web pour les consulter plus tard ou simplement pour avoir une meilleure lisibilité si les pages présentent des fonds torturés. Voici l&#8217;essentiel en 10 trucs et astuces pour créer une feuille de style CSS réservée à l&#8217;impression.

Rappels sur les CSS à l&#8217;impression

C&#8217;est la valeur print de l&#8217;attribut media de la balise link qui déclenche l&#8217;application des styles lorsque l&#8217;utilisateur lance l&#8217;impression d&#8217;une page. Cette feuille de style est appellée de la manière suivante :
&#60;link rel="stylesheet" href="print.css" type="text/css" [...]]]></description>
			<content:encoded><![CDATA[<p>Les feuilles de style réservées à l&#8217;impression sont souvent oubliées alors qu&#8217;elles offrent de grands services pour tous ceux qui impriment les pages web pour les consulter plus tard ou simplement pour avoir une meilleure lisibilité si les pages présentent des fonds torturés. Voici l&#8217;essentiel en 10 trucs et astuces pour créer une feuille de style CSS réservée à l&#8217;impression.<span id="more-5108"></span></p>

<h2>Rappels sur les CSS à l&#8217;impression</h2>

<p>C&#8217;est la valeur <code>print</code> de l&#8217;attribut <code>media</code> de la balise <code>link</code> qui déclenche l&#8217;application des styles lorsque l&#8217;utilisateur lance l&#8217;impression d&#8217;une page. Cette feuille de style est appellée de la manière suivante :
<pre>&lt;link rel="stylesheet" href="print.css" type="text/css" media="print" /&gt;</pre>
Attention à bien préciser <code>media="screen"</code> à votre CSS principale sous peine de voir la feuille de style print.css hériter des styles réservés à l&#8217;affichage :
<pre>&lt;link rel="stylesheet" href="style.css" type="text/css" media="screen" /&gt;</pre></p>

<h2>Les 10 astuces</h2>

<dl> <dt>1. Supprimer la navigation</dt> <dd>
<pre>#nav, #sidebar {
    display: none;
}</pre>
</dd> <dt>2. Augmenter la largeur du texte à lire</dt> <dd>
<pre>#content {
    width: 100%;
    margin: 0;
    float: none;
}</pre>
</dd> <dt>3. Remettre les backgrounds aux valeurs par défaut</dt> <dd>
<pre>body {
    background: white;
}
#content {
    background: transparent;
}</pre>
</dd> <dt>4. Remettre la couleur des textes par défaut</dt> <dd>
<pre>#author {
    color: #111;
}</pre>
</dd> <dt>5. Afficher la destination des liens</dt> <dd>
<pre>a:link:after {
    content: " (" attr(href) ") ";
}</pre>
</dd> <dt>6. Faites ressortir des liens présents dans le texte</dt> <dd>
<pre>a:link {
    font-weight: bold;
    text-decoration: underline;
    color: #06c;
}</pre>
</dd> <dt>7. Utiliser des tailles de polices cohérentes avec une imprimante</dt> <dd>
<pre>p {
    font-size: 12pt;
}</pre>
</dd> <dt>8. Modifier les polices de caractère</dt> <dd>
<pre>body {
    font-family: Georgia, 'Times New Roman', serif;
}</pre>
</dd> <dt>9. Penser à gérer l&#8217;affichage des commentaires s&#8217;ils sont nombreux</dt> <dd>
<pre>#comments {
    page-break-before: always;
}</pre>
</dd> <dt>10. Afficher un message à l&#8217;impression uniquement</dt> <dd>
<pre>#printMsg {
    display: block;
}</pre>
</dd> </dl>

<p>D&#8217;après l&#8217;article <a href="http://www.webdesignerdepot.com/2010/01/10-tips-for-better-print-style-sheets/">10 Tips for Better Print Style Sheets</a> de <a href="http://pieterbeulque.be/">Pieter Beulque</a> paru sur <a href="http://www.webdesignerdepot.com">Webdesigner Depot</a> qui contient de nombreuses explications et des exemples visuels « avant après » l&#8217;application d&#8217;une CSS destinée à l&#8217;impression.</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/10-conseils-pour-ameliorer-votre-feuille-de-style-css-print/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>CSS &amp; Navigateurs &#8212; 10 problèmes de compatibilité récurrents</title>
		<link>http://css4design.com/css-navigateurs-10-problemes-de-compatibilite-recurrents</link>
		<comments>http://css4design.com/css-navigateurs-10-problemes-de-compatibilite-recurrents#comments</comments>
		<pubDate>Mon, 25 Jan 2010 20:43:44 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Intégration web]]></category>
		<category><![CDATA[Navigateurs]]></category>
		<category><![CDATA[Bug]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[IE]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[Internet Explorer]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=4992</guid>
		<description><![CDATA[Double-Margin Bug, Float-Width Bug, Pixel Gap Bug
This article covers CSS bugs such as Double-Margin Bug, Float-Width Bug and Pixel Gap Bug. A very clear and clean solution to reslove these issues.]]></description>
			<content:encoded><![CDATA[<p>Les problèmes de compatibilité entre les feuilles de style CSS et leurs interprétations parfois fantaisistes d&#8217;un  navigateur à l&#8217;autre font partie du quotidien des intégrateurs web et autres webdesigners. Voici une <a href="http://tutorialfeed.blogspot.com/2010/01/10-common-css-browser-compatibility.html">liste  de liens</a> (en anglais) qui vous permettra de reconnaitre et corriger les bugs de rendu qui font tâches dans votre design web :<span id="more-4992"></span></p>

<ul>
    <li><a href="http://www.positioniseverything.net/explorer.html">The weird and wonderful world of Internet Explorer</a></li>
    <li><a href="http://www.communitymx.com/content/article.cfm?cid=C37E0">How To Attack An Internet Explorer (Win) Display Bug</a></li>
    <li><a href="http://positioniseverything.net/explorer/ie-listbug.html">The IE/Win Disappearing List-Background Bug</a></li>
    <li><a href="http://www.positioniseverything.net/explorer/dup-characters.html">IE6 Duplicate Characters Bug</a></li>
    <li><a href="http://www.ajaxprojects.com/ajax/tutorialdetails.php?itemid=540#start">How to resolve browser compatibility issues while working with JavaScript, AJAX and XML</a></li>
    <li><a href="http://www.learn-css-tutorial.com/BrowserIssues.cfm">Double-Margin Bug, Float-Width Bug, Pixel Gap Bug</a></li>
    <li><a href="http://www.dustindiaz.com/min-height-fast-hack/">CSS Min-Height Bug</a></li>
    <li><a href="http://gtwebdev.com/workshop/gaps/white-space-bug.php">IE White-Space Bug</a></li>
    <li><a href="http://perishablepress.com/press/2009/01/27/cross-browser-transparency-via-css/">Cross Browser Compatible CSS Opacity</a></li>
    <li><a href="http://www.456bereastreet.com/archive/200412/clearing_floated_images_in_body_text/">Clearing floated images in body text</a></li>
    <li><a href="http://perishablepress.com/press/2006/11/12/firefox-css-magic/">Firefox CSS Magic</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/css-navigateurs-10-problemes-de-compatibilite-recurrents/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Quelques notes sur les grilles de mise en page</title>
		<link>http://css4design.com/quelques-notes-sur-les-grilles-de-mise-en-page</link>
		<comments>http://css4design.com/quelques-notes-sur-les-grilles-de-mise-en-page#comments</comments>
		<pubDate>Thu, 07 Jan 2010 09:42:39 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[Design & Graphisme]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Framework CSS]]></category>
		<category><![CDATA[Graphisme]]></category>
		<category><![CDATA[Grille]]></category>
		<category><![CDATA[Quelques notes]]></category>
		<category><![CDATA[Sticky]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=6</guid>
		<description><![CDATA[A mesure que les techniques des langages du web l&#8217;ont permis, des designers web talentueux ont travaillé à l&#8217;élaboration d&#8217;environnement de travail permettant de mettre en place des systèmes de grille adaptés aux contraintes de la création de pages web. Contrairement à l&#8217;imprimé où le langage de description de page Postscript d&#8217;Abode est un standard, il n&#8217;existe pas sur le web de dispositif « officiel » pour créer des colonnes à l&#8217;épreuve des différences de rendu entre les agents utilisateurs (les navigateurs).

L&#8217;arrivée des frameworks CSS a popularisé le placement des blocs en se basant sur une grille et le monde du [...]]]></description>
			<content:encoded><![CDATA[<p>A mesure que les techniques des langages du web l&#8217;ont permis, des designers web talentueux ont travaillé à l&#8217;élaboration d&#8217;environnement de travail permettant de mettre en place des systèmes de grille adaptés aux contraintes de la création de pages web. Contrairement à l&#8217;imprimé où le langage de description de page <em>Postscript</em> d&#8217;Abode est un standard, il n&#8217;existe pas sur le web de dispositif « officiel » pour créer des colonnes à l&#8217;épreuve des différences de rendu entre les agents utilisateurs (les navigateurs).<span id="more-6"></span></p>

<p>L&#8217;arrivée des frameworks CSS a popularisé le placement des blocs en se basant sur une grille et le monde du webdesign découvre peu à peu que le design graphique est une pratique plusieurs fois millénaire qui a forgé ses propres règles pour <strong>faire en sorte que le contenu devienne message grâce au contenant</strong> (la forme au service du fond et vice-versa).</p>

<p>Si les grilles s&#8217;imposent rapidement c&#8217;est qu&#8217;on les trouve dans les meilleures productions graphiques (sur le web ou ailleurs). Leur absence n&#8217;est pas synonyme de travail de moindre qualité (loin de là), mais il est indéniable qu&#8217;elles permettent de donner un aspect professionnel à un design banal.</p>

<p>Ces grilles sont une habitude pour celles et ceux qui viennent du monde de l&#8217;imprimé où des logiciels comme <em>XPress</em> ou <em>InDesign</em> encouragent la mise en place de gabarits à partir de marges, de colonnes et de gouttières. C&#8217;est d&#8217;ailleurs une pratique courante dans les logiciels professionnels de permettre le réglage des paramètres initiaux dès la création d&#8217;un nouveau document.</p>

<p>Or, sur les web, les professionnels ont tendance à se servir d&#8217;éditeurs plus ou moins sophistiqués pour saisir le code des différents langages nécessaires pour l&#8217;intégration d&#8217;une charte graphique. Un logiciel comme Dreamweaver peut passer pour un logiciel professionnel pour la création de site web, mais le code produit en mode Création ne m&#8217;a pas encore convaincu.</p>

<p>Cette idée de réglages initiaux à la création d&#8217;un nouveau document m&#8217;a fait penser aux options proposées par la petite <a href="http://css4design.com/boks-editeur-visuel-de-grilles-css-pour-blueprint">application Boks</a> qui permet en quelques clics de générer l&#8217;ensemble des fichiers du <a href="http://css4design.com/frameworks-css-reset-css-design-from-scratch">framework CSS</a> <a href="http://www.blueprintcss.org/">Blueprint</a> après avoir déterminé la largeur de l&#8217;empagement et de la gouttière ainsi que le nombre de colonnes.</p>

<p>Le seul problème de <em>Boks </em>c&#8217;est qu&#8217;il ne propose rien d&#8217;autre que Blueprint que je trouve assez verbeux. Je préfère par exemple un framework comme <a href="http://code.google.com/p/css-boilerplate/">Boilerplate</a> qui n&#8217;impose pas de système de grille et qui est plus léger.</p>

<p><img class="alignleft size-thumbnail wp-image-4790" title="the-grid-system" src="http://css4design.com/wp-content/uploads/2010/01/the-grid-system-74x74.jpg" alt="" width="74" height="74" />Pour tout savoir ou presque sur les grilles de mise en page, voici l&#8217;excellent <a href="http://www.thegridsystem.org/">The Grid System</a> qui propose des tonnes de ressources sur le sujet : sélection d&#8217;articles, outils, livres, modèles de grilles, etc. Profitez-en pour afficher la grille du site et admirer comment l&#8217;auteur la faire vivre en fonction des rubriques.</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/quelques-notes-sur-les-grilles-de-mise-en-page/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Afficher / masquer votre grille de base avec jQuery</title>
		<link>http://css4design.com/afficher-masquer-votre-grille-de-base-avec-jquery</link>
		<comments>http://css4design.com/afficher-masquer-votre-grille-de-base-avec-jquery#comments</comments>
		<pubDate>Thu, 17 Dec 2009 12:07:00 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[Intégration web]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Grille]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Mise en page]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=4513</guid>
		<description><![CDATA[Si vous travaillez avec une grille pour harmoniser la disposition des blocs sur la page, vous passez certainement du temps à afficher puis masquer cette grille pour vérifier que tout est en ordre. Pour cela on peut ajouter une classe CSS dans le code HTML ou mettre entre commentaires une ligne concernant le background de la page dans la feuille de style&#8230; Les deux solutions sont assez fastidieuses. C&#8217;est pourquoi, je vous propose une petite astuce toute simple qui s&#8217;applique à tout type d&#8217;intégration avec toutefois un bonus pour Wordpress que vous adapterez sans peine à votre CMS préféré.

Voici le [...]]]></description>
			<content:encoded><![CDATA[<p>Si vous travaillez avec une grille pour harmoniser la disposition des blocs sur la page, vous passez certainement du temps à afficher puis masquer cette grille pour vérifier que tout est en ordre. Pour cela on peut ajouter une classe CSS dans le code HTML ou mettre entre commentaires une ligne concernant le <code>background</code> de la page dans la feuille de style&#8230; Les deux solutions sont assez fastidieuses. C&#8217;est pourquoi, je vous propose une petite astuce toute simple qui s&#8217;applique à tout type d&#8217;intégration avec toutefois un bonus pour Wordpress que vous adapterez sans peine à votre CMS préféré.<span id="more-4513"></span></p>

<p>Voici le code à ajouter dans votre template Wordpress si vous voulez afficher ou masquer la grille en production. Si vous travaillez en local (ou si vous n&#8217;utilisez pas Wordpress), supprimez le code PHP :
<pre><code>&lt;?php if ( is_user_logged_in() ) : ?&gt;
    &lt;a id="displayGrid" href="#displayGrid"&gt;Afficher/masquer la grille&lt;/a&gt;
&lt;?php endif; ?&gt;
</code></pre>
Le bout de code jQuery pour gérer l&#8217;événement :
<pre><code>// Affichage de la grille si connecte
$("#displayGrid").click(function() {
    $("html").toggleClass("display-grid");
});
</code></pre>
La règle CSS à mettre dans votre feuille de style :
<pre><code>.display-grid #container {
    background: url(pix/grid.png);
}
</code></pre>
Pour que le lien vous suive quand vous faites défiler la page :
<pre><code>#displayGrid {
    position: fixed;
}
</code></pre></p>

<h2>Mise en page alternative</h2>

<p>Avec un peu d&#8217;astuce et d&#8217;espièglerie vous trouverez rapidement de nombreuses applications à cette astuce. Je pense notamment à la possibilité de proposer une mise en page CSS alternative aux visiteurs.</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/afficher-masquer-votre-grille-de-base-avec-jquery/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Boks &#8212; Éditeur visuel de grilles CSS pour Blueprint, etc.</title>
		<link>http://css4design.com/boks-editeur-visuel-de-grilles-css-pour-blueprint</link>
		<comments>http://css4design.com/boks-editeur-visuel-de-grilles-css-pour-blueprint#comments</comments>
		<pubDate>Fri, 11 Dec 2009 11:07:04 +0000</pubDate>
		<dc:creator>Bruno Bichet</dc:creator>
				<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Intégration web]]></category>
		<category><![CDATA[Le petit journal du web]]></category>
		<category><![CDATA[Blueprint]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Framework CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://css4design.com/?p=4476</guid>
		<description><![CDATA[Boks est un éditeur de grille CSS développé avec Air (utilisable sur Windows, Mac et Linux) qui fournit une interface visuelle pour travailler avec le framework CSS Blueprint. Les frameworks sont souvent très utiles mais le paramétrage d&#8217;un pas de grille personnalisé peut s&#8217;avérer fastidieux. Outre la configuration du nombre de colonnes, de la largeur de la page et de la valeur de la gouttière, Boks permet de configurer la grille verticale en déterminant les valeurs des principales balises HTML.

L&#8217;interface de Boks

Paramétrez finement votre grille



Exporter les fichiers CSS et HTML

Lors de l&#8217;export, les fichiers CSS sont compatibles avec Blueprint en [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://toki-woki.net/p/Boks/">Boks</a> est un éditeur de grille CSS développé avec Air (utilisable sur Windows, Mac et Linux) qui fournit une interface visuelle pour travailler avec le <a href="http://css4design.com/frameworks-css-reset-css-design-from-scratch">framework CSS</a> <a href="http://www.blueprintcss.org/">Blueprint</a>. Les <em>frameworks</em> sont souvent très utiles mais le paramétrage d&#8217;un pas de grille personnalisé peut s&#8217;avérer fastidieux. Outre la configuration du nombre de colonnes, de la largeur de la page et de la valeur de la gouttière, <em>Boks</em> permet de configurer la grille verticale en déterminant les valeurs des principales balises HTML.<span id="more-4476"></span></p>

<h2>L&#8217;interface de Boks</h2>

<div id="attachment_4477" class="wp-caption aligncenter" style="width: 634px"><img class="size-full wp-image-4477 " title="boks-main" src="http://css4design.com/wp-content/uploads/2009/12/boks-main-e1260510974246.jpg" alt="" width="624" height="387" /><p class="wp-caption-text">Fenêtre principale de Boks pour placer les blocs de votre design après avoir déterminé votre grille de mise en page.</p></div>

<h2>Paramétrez finement votre grille</h2>

<p><a href="http://css4design.com/wp-content/uploads/2009/12/boks-settings-1.jpg"><img class="size-medium wp-image-4478 alignnone" title="boks-settings-1" src="http://css4design.com/wp-content/uploads/2009/12/boks-settings-1-134x160.jpg" alt="" width="134" height="160" /></a><a href="http://css4design.com/wp-content/uploads/2009/12/boks-settings-2.jpg"><img class="size-medium wp-image-4479 alignnone" title="boks-settings-2" src="http://css4design.com/wp-content/uploads/2009/12/boks-settings-2-134x160.jpg" alt="" width="134" height="160" /></a><a href="http://css4design.com/wp-content/uploads/2009/12/boks-settings-3.jpg"><img class="size-medium wp-image-4480 alignnone" title="boks-settings-3" src="http://css4design.com/wp-content/uploads/2009/12/boks-settings-3-134x160.jpg" alt="" width="134" height="160" /></a><a href="http://css4design.com/wp-content/uploads/2009/12/boks-settings-4.jpg"><img class="size-medium wp-image-4481 alignnone" title="boks-settings-4" src="http://css4design.com/wp-content/uploads/2009/12/boks-settings-4-134x160.jpg" alt="" width="134" height="160" /></a></p>

<h2>Exporter les fichiers CSS et HTML</h2>

<p>Lors de l&#8217;export, les fichiers CSS sont compatibles avec <em>Blueprint</em> en version 0.9.1 mais rien ne vous empêche de vous en servir de la grille ainsi générée pour d&#8217;autres frameworks, voire juste pour avoir les <code>width</code> et autres <code>margin-left</code>, etc. dont vous avez besoin, comme je l&#8217;ai fait ici pour la mise en place de mon nouveau thème Wordpress !</p>

<p>Il est possible d&#8217;obtenir les fichiers CSS screen.css, print.css et ie.css ou de les rassembler automatiquement dans un seul fichier pour optimiser le nombre de requêtes HTTP</p>
]]></content:encoded>
			<wfw:commentRss>http://css4design.com/boks-editeur-visuel-de-grilles-css-pour-blueprint/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
	</channel>
</rss>
