<?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>Clearideaz &#187; css</title>
	<atom:link href="http://clearideaz.com/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>http://clearideaz.com</link>
	<description>webdesigner et intégrateur XHTML / CSS</description>
	<lastBuildDate>Mon, 20 Jun 2011 14:00:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Inclusion de fichiers dans tout type de document</title>
		<link>http://clearideaz.com/2010/12/inclusion-de-fichiers-dans-tout-type-de-document/</link>
		<comments>http://clearideaz.com/2010/12/inclusion-de-fichiers-dans-tout-type-de-document/#comments</comments>
		<pubDate>Thu, 16 Dec 2010 16:38:43 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[astuce]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[include]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[serveur]]></category>

		<guid isPermaLink="false">http://clearideaz.com/?p=430</guid>
		<description><![CDATA[Une des règles première en terme de performance est de minimiser au maximum les requêtes HTTP. Voici une méthode qui peut avoir son utilité lorsque vous utilisez une dizaine de plugins jQuery ou si vous êtes attaché à séparer vos styles dans diverses feuilles CSS ! Il est possible de réaliser des inclusions de fichiers [...]]]></description>
			<content:encoded><![CDATA[<p>Une des règles première en terme de performance est de minimiser au maximum les requêtes HTTP. Voici une méthode qui peut avoir son utilité lorsque vous utilisez une dizaine de plugins jQuery ou si vous êtes attaché à séparer vos styles dans diverses feuilles CSS !</p>
<p>Il est possible de réaliser des inclusions de fichiers coté serveur. Pour cela, il vous faudra d&#8217;abord rendre opérationnelle l&#8217;extension mod_include sur Apache.<br />
Rien de plus simple ! En supposant que votre serveur apache est localisé chemin &laquo;&nbsp;/etc/apache2/&nbsp;&raquo;, exécutez la commande suivante :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">ln</span> <span style="color: #660033;">-s</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>apache2<span style="color: #000000; font-weight: bold;">/</span>mods-available<span style="color: #000000; font-weight: bold;">/</span>include.load <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>apache2<span style="color: #000000; font-weight: bold;">/</span>mods-enabled</pre></div></div>

<p>Cette commande va créer un lien symbolique du module &laquo;&nbsp;include&nbsp;&raquo; dans le dossier des modules activés de Apache.</p>

<p>N&#8217;oubliez pas de redémarrer Apache :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">apache2 <span style="color: #660033;">-k</span> restart</pre></div></div>

<p>Une fois cette opération effectuée, vous avez fait le plus gros du boulot. Nous allons maintenant utiliser ce module pour activer les inclusions au sein des fichiers javascript ayant pour extension &laquo;&nbsp;.includer.js&nbsp;&raquo;</p>
<p>Dans votre dossier contenant les scripts ou même à la racine de votre projet, créez un fichier .htaccess. Dans ce fichier .htaccess, nous allons d&#8217;abord définir un filtre de type de fichier (supprimez bien l&#8217;espace entre < et Filematch, mon syntax highlighter est buggé <img src='http://clearideaz.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ):</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;">&lt; <span style="color: #00007f;">FilesMatch</span> <span style="color: #7f007f;">&quot;<span style="color: #000099; font-weight: bold;">\.</span>includer<span style="color: #000099; font-weight: bold;">\.</span>js$&quot;</span>&gt;
&lt; /FilesMatch&gt;
&nbsp;
Ensuite, il faut activer le module <span style="color: #00007f;">include</span> de Apache :
&lt;pre lang=<span style="color: #7f007f;">&quot;apache&quot;</span>&gt;Options +<span style="color: #0000ff;">Includes</span></pre></div></div>

<p>Enfin, nous lançons le filtre qui va examiner les fichiers filtrés précédemment et gérer l&#8217;inclusion :</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;">SetOutputFilter <span style="color: #0000ff;">INCLUDES</span></pre></div></div>

<p>Voici ce que vous obtenez au final dans votre fichier .htaccess :</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;">&lt; <span style="color: #00007f;">FilesMatch</span> <span style="color: #7f007f;">&quot;<span style="color: #000099; font-weight: bold;">\.</span>includer<span style="color: #000099; font-weight: bold;">\.</span>js$&quot;</span>&gt;
<span style="color: #00007f;">Options</span> +<span style="color: #0000ff;">Includes</span>
SetOutputFilter <span style="color: #0000ff;">INCLUDES</span>
&lt; /FilesMatch&gt;</pre></div></div>

<p>Créez maintenant dans votre dossier de script un fichier nommé global.includer.js puis créez votre première inclusion.<br />
Exemple en ayant pris le soin de mettre à disposition jquery dans le même dossier que le fichier gérant l&#8217;inclusion:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;!--</span>#include file<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;jquery-1.4.4.js&quot;</span> <span style="color: #339933;">--&gt;</span>
$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'document'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;L'inclusion fonctionne à merveille&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Avec cet exemple, jquery va être automatiquement inséré avant le script créant l&#8217;alerte javascript.</p>
<p>L&#8217;inclusion coté serveur peut être très utile aussi dans des fichiers css ou même html !</p>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2010/12/inclusion-de-fichiers-dans-tout-type-de-document/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Checklist avant livraison d&#8217;un projet</title>
		<link>http://clearideaz.com/2010/11/checklist-avant-livraison-dun-projet/</link>
		<comments>http://clearideaz.com/2010/11/checklist-avant-livraison-dun-projet/#comments</comments>
		<pubDate>Tue, 16 Nov 2010 13:18:02 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[Accessibilité]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Ergonomie]]></category>
		<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[contraintes]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://clearideaz.com/?p=413</guid>
		<description><![CDATA[Je ne sais pas pour vous mais la livraison d&#8217;un projet est souvent sujet à bon nombre d&#8217;incertitudes. A-t&#8217;on pensé à tout ? Un bon nombre de clients va chercher à évaluer la réponse apportés à sa demande initiale, ce qui est tout à fait normal. Il est important d&#8217;avoir une checklist qui servira de [...]]]></description>
			<content:encoded><![CDATA[<p>Je ne sais pas pour vous mais la livraison d&#8217;un projet est souvent sujet à bon nombre d&#8217;incertitudes. A-t&#8217;on pensé à tout ?<br />
Un bon nombre de clients va chercher à évaluer la réponse apportés à sa demande initiale, ce qui est tout à fait normal.<br />
Il est important d&#8217;avoir une checklist qui servira de contrôle qualité avant la livraison d&#8217;un site web.<br />
Je précise que ces contraintes sont largement inspirées de celles de l&#8217;équipe web &laquo;&nbsp;BNP E-business&nbsp;&raquo;.</p>

<p>Voici donc une liste (non-exhaustive) des points de contrôle effectués :</p>
<table>
<thead>
<tr>
<th colspan="2" id="controlpoint">Points de contrôle</th>
</tr>
</thead>
<tbody>
<tr>
<th id="ergonomie" colspan="2">Ergonomie</th>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="underlinerule">Ne pas utiliser de soulignement de texte pour autre chose que des liens.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="404error">La page 404 est indispensable et doit être personnalisée aux couleurs du site. Proposer éventuellement un formulaire de recherche.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="printsheet">Une feuille de style d’impression doit être prévue.</td>
</tr>
<tr>
<th id="accessibilityrules" colspan="2">Accessibilité</th>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="flashalt">En cas d’utilisation de plug-ins (vidéo, Flash), prévoir une alternative textuelle pour un utilisateur qui n’aurait pas installé et/ou ne voudrait pas installer le plug-in.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="accessibilitybg">Tester la page sans images (via l&#8217;extension Webdevelopper de Firefox) pour s&#8217;assurer que l&#8217;ensemble du contenu est lisible sans les images de fond. Exemple : Un texte blanc sur une image def fond peut devenir illisible si aucune couleur de fond n&#8217;a été spécifiée dans les propriétés du bloc conteneur.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="imgalt">Toute image doit avoir un alt, renseigné ou non. Illustration : alt vide, ou image de fond</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="fileinfo">Dans le cas où des fichiers sont proposés au téléchargement, deux points sont à respecter : format ouvert, poids du fichier à télécharger doit être indiqué.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="nonobstrusive">Le javascript doit être non-obstrusif et le site doit être parfaitement utilisable s&#8217;il est désactivé par l&#8217;utilisateur.</td>
</tr>
<tr>
<th id="htmlcssintergration" colspan="2">Intégration HTML / CSS</th>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="w3cvalid">Les pages sont valides W3C</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="cleanhtml">Le balisage est propre : pas de styles ou de scripts dans le code HTML</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="doctypetransitional">Le doctype du document HTML sera du XHTML 1.0 Transitional  dans le cas (limité) d’utilisation d&#8217;iframe.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="doctypeframeset">Le doctype du document HTML sera du XHTML 1.0 Frameset  dans le cas (limité) d’utilisation de frameset.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="tableforbidden"><strong>Bannir l&#8217;utilisation de tableaux</strong> pour la mise en page, les tableaux ne doivent être utilisée que pour des données tabulaires et non pas pour créer des mises en page.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="titlerule">S&#8217;efforcer de renseigner l&#8217;intitulé « title » des liens pour des raisons de référencement et d&#8217;accessibilité. Le title du lien doit fournir plus d&#8217;informations que l&#8217;intitulé du lien lui-même (mais y compris l&#8217;intitulé ; ex : &laquo;&nbsp;Aide (nouvelle fenêtre)&nbsp;&raquo;)</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="tagstructural">La <strong>structuration</strong> de l&#8217;<strong>information</strong> doit être <strong>cohérente</strong> par rapport au <strong>contexte général du site</strong> Web (ex : pas de pub au milieu du texte)</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="tagmap">Une page Web doit posséder une structure cohérente (utiliser <strong>h1 (oblig.), h2</strong>, …pour leur fonction 1ère ; les blocs d&#8217;infos doivent être distincts)</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="tablerule">Pour les tableaux de données, identifier les zones suivante : « thead » (pour l&#8217;entête du tableau), « tbody » (pour le corps du tableau) et « tfoot » (pour les données de pied de tableau). On s&#8217;efforcera de fournir une description du tableau au sein de la balise « summary »</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="formlinks">Les champs de saisie d&#8217;un formulaire doivent être reliés à leurs textes explicatifs respectifs (spécifier <strong>label, id</strong> et <strong>for</strong>)</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="tagsense">Respecter le sens sémantique des balises. Proscrire l&#8217;utilisation des balises et attributs dépréciés (ex : b, center, basefont, applet, dir, font, isindex, menu, s, strike, u et align, bgcolor, height…).</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="abbracro">Utiliser la balise &lt;abbr&gt; et/ou &lt;acronym&gt; ainsi que son attribut title lorsque cela est possible.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="iespecific">Dans le cas d’un style spécifique à Internet Explorer, utiliser les commentaires conditionnels. Evitez les hacks du type &laquo;&nbsp;_margin&nbsp;&raquo; ou encore &laquo;&nbsp;*width&nbsp;&raquo;</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="declarationsize">Pour conserver un maximum de souplesse aux feuilles de style, limiter tant que possible le « poids » des déclarations. Exemple : privilégier « .content » à « body.page #wrapper div.content »</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="classchart"><strong>Pas de notions topographiques ou colorimétriques dans les noms de classes</strong> ou : noms faisant référence à la structure. Pas de couleur ni gauche/droite. Exemple : ne pas utiliser div.rouge ou div.left. Si on décide un jour de modifier les propriétés de placement ou d&#8217;apparence, ces classes n&#8217;auront plus de sens.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="quote">Ne pas utiliser de cote, double ou simple, dans les chemins des CSS.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="easyupdate">Les sites, les pages doivent pouvoir être actualisés facilement et avec souplesse. De ce fait, les zones de contenu doivent s’étendre graphiquement en hauteur (pas de hauteur fixe donc pour les blocs)</td>
</tr>
<tr>
<th id="optimizationseo" colspan="2"> Optimisation du référencement</th>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="getparameter">Pour des raisons de référencement, limiter au maximum les paramètres et les caractères « exotiques » dans les liens.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="metatag">Les balises d’indexation &lt;title&gt;, &lt;meta name=&nbsp;&raquo;description&nbsp;&raquo; /&gt; et &lt;meta name=&nbsp;&raquo;keywords&nbsp;&raquo; /&gt; doivent êtres renseignées même si leur action en terme de référencement peut être discutable. Elles doivent être situées juste sous la balise définissant l’encodage et dans l’ordre suivant : title / description / keywords</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="metatitle">La balise &lt;title&gt; doit être présente et renseignée sur toutes les pages. Elle doit être en adéquation avec son contenu et donc, dans la plupart des cas, différente d’une page à l’autre.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="metadescription">La balise &lt;meta name=&nbsp;&raquo;description&nbsp;&raquo;&gt; doit être présente et renseignée sur toutes les pages. C’est une balise visible par l’internaute. Elle doit être significative de son contenu, des services rendus par la page, des informations livrées.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="metakeyword">La balise &lt;meta name=&nbsp;&raquo;keywords&nbsp;&raquo;&gt; doit être présente et renseignée sur toutes les pages. Elle doit reprendre les quelques mots-clé de la page. On peut aussi y inclure certains pluriels, synonymes, anglicismes, etc.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="robotstxt">Prévoir un fichier à l’intention des robots d’indexation, à la racine du site. (robots.txt)</td>
</tr>
<tr>
<th id="browsercompatibility" colspan="2"> Compatibilité Navigateurs</th>
</tr>
<tr>
<td id="ie6"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="ie6">Internet Explorer 6,<br />
(N.B. : Pour cette version, il faut que le site soit un minimum exploitable)</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="ie7more">Internet Explorer 7 et +,</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="firefox">Firefox 2 et +,</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="safari">Safari 2 et + (tolérance)</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="opera">Opera 9 et + (tolérance)</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="resolutionrule">Les pages livrées doivent s’afficher, sans ascenseur horizontal, dans un écran en 1024 x 768</td>
</tr>
<tr>
<th id="performance" colspan="2"> Performance</th>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="weightrule">Le poids maximal d’une page, images incluses, ne doit pas dépasser 150k.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="homeweight">Seule la page d’accueil fait exception et peut atteindre jusqu’à 250k, images incluses.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="optimizerequests">Évitez les appels multiples à des feuilles de style ou à des fichiers javascript. Merger ces appels pour des raisons évidentes de performance</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="png24">L’utilisation du format PNG 24 devra être utilisé avec parcimonie pour des raisons de compatibilité navigateur (IE6 ne supporte pas les couches alpha sans l&#8217;utilisation de DirectX. Ce dernier pose des soucis de performances, les images filtrées n&#8217;étant pas mises en cache).</td>
</tr>
<tr>
<th id="others" colspan="2"> Autre&#8230;</th>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="utf8encoded">L’encodage privilégié est l’UTF-8, il est indiqué avec la balise meta « content type ».</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="specialcharacters">Les caractères suivants doivent être encodés sous forme d’entité HTML : &amp;, &lt;, &gt;, €</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="favicon">Prévoir une icône de favori à la racine du site.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="textconvention">Les valeurs monétaires, statiques ou dynamiques, doivent suivre le format suivant : un espace insécable comme séparateur de millier une virgule comme séparateur de décimale un espace insécable entre le nombre et son unité</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="textconvention2">Utiliser un espace insécable entre une double ponctuation et le mot qui la précède : !, ?, :, ;</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="urlrule">Les chemins vers les pages (mais aussi vers les scripts, feuilles de style, images, etc) doivent être en absolu en considérant le répertoire / comme la racine du site.</td>
</tr>
<tr>
<td valign="middle"><img title="Validé" src="http://clearideaz.com/wp-content/uploads/2010/11/valid.gif" alt="Validé" width="25" height="18" /></td>
<td id="ampencoding">Dans le cas d’envoi de paramètre dans l’URL, ne pas oublier d’encoder sous forme d’entité HTML le « &amp; » (&amp;amp;).</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2010/11/checklist-avant-livraison-dun-projet/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Créer une galerie photo grâce à CSS3</title>
		<link>http://clearideaz.com/2010/05/creer-une-galerie-photo-grace-a-css3/</link>
		<comments>http://clearideaz.com/2010/05/creer-une-galerie-photo-grace-a-css3/#comments</comments>
		<pubDate>Mon, 31 May 2010 13:20:38 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[CSS3]]></category>
		<category><![CDATA[cross-browser]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[démonstration]]></category>
		<category><![CDATA[galerie]]></category>

		<guid isPermaLink="false">http://clearideaz.com/?p=327</guid>
		<description><![CDATA[Avec l&#8217;arrivée des nouvelles propriétés CSS3 (dont la spécification n&#8217;est toujours pas finalisée&#8230;), il est devenu assez facile de créer des sites internet attrayants sans pour autant avoir recours à Flash ou à JavaScript. Dans la démonstration associée à cet article, vous aller pouvoir visualiser quelques possibilités offertes par CSS3, voici celles que j&#8217;ai utilisées [...]]]></description>
			<content:encoded><![CDATA[<p><a title="CSS3 Highlight, une galerie photo full CSS" href="http://clearideaz.com/demo/CSS-Highlight/"><img class="alignright size-thumbnail wp-image-330" title="css3highlight" src="http://clearideaz.com/wp-content/uploads/2010/05/css3highlight1-e1275308478674-200x200.jpg" alt="" width="200" height="200" /></a>Avec l&#8217;arrivée des nouvelles propriétés CSS3 (dont la spécification n&#8217;est toujours pas finalisée&#8230;), il est devenu assez facile de créer des sites internet attrayants sans pour autant avoir recours à Flash ou à JavaScript.</p>
<p>Dans la <a title="CSS3 Highlight, une galerie photo full CSS" href="http://clearideaz.com/demo/CSS-Highlight/">démonstration associée à cet article</a>, vous aller pouvoir visualiser quelques possibilités offertes par CSS3, voici celles que j&#8217;ai utilisées :</p>
<h3>Le pseudo-selecteur :target</h3>
<p>:target est un pseudo-sélecteur permettant d&#8217;accéder à un élément du DOM possédant l&#8217;id du lien référent.<br />
En clair, si je clique sur un lien dont l&#8217;attribut href est égal à #test, la propriété de style a:target { background-color:red; } affectera un fond de couleur rouge à l&#8217;élément ayant pour ID #test.</p>
<p>C&#8217;est de cette manière que j&#8217;obtiens la méthode de sélection des images agrandie dans la démo. Pour IE qui ne supporte par cette propriété, j&#8217;ai bidouillé grâce à l&#8217;overflow. En clair, le cadre conteneur des images agrandies a pour attribut overflow, la valeur hidden. Il dispose en outre des dimensions exactes d&#8217;une de ces images. Au clic sur le lien de la miniature, l&#8217;image cible est directement appelée par le hash du lien.</p>

<h3>Les ombres</h3>
<p>Pour la démo, j&#8217;ai utilisé la propriété box-shadow afin de mettre en valeur l&#8217;image miniature survolée. La syntaxe est simple :</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;">-moz-box-shadow<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
-webkit-box-shadow<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span></pre></div></div>

<p>Il est à noter que cette propriété à été retiré pour le moment de la spécification CSS3.</p>
<h3>La propriété transform</h3>
<p>Cette propriété permet d&#8217;agir sur la forme d&#8217;un élément, qu&#8217;il s&#8217;agisse d&#8217;une image ou de toute autre balise standard.</p>
<p>Il est par exemple possible d&#8217;effectuer une rotation sur un objet via cette syntaxe :</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;">img <span style="color: #00AA00;">&#123;</span>
  transform<span style="color: #00AA00;">:</span>rotate<span style="color: #00AA00;">&#40;</span>20deg<span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Il vous sera également possible de mettre à l&#8217;échelle certains élements. Voici un exemple :</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #cc00cc;">#button</span> <span style="color: #00AA00;">&#123;</span>
  transform<span style="color: #00AA00;">:</span>scale<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0.8</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* réduira la div de 20% */</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Sur la démonstration, je m&#8217;en suis servi pour agrandir les miniatures au survol de la souris.</p>
<h3>Les transitions</h3>
<p>J&#8217;ai également utilisé les <em>transitions</em> (qui ne fonctionnent qu&#8217;avec la version 3.7 de Firefox et avec les dernières versions de Safari).  Les transitions CSS permettent de modifier les  valeurs de propriétés CSS progressivement, sur une durée déterminée. On construit la valeur en spécifiant d&#8217;abord la ou les propriétés sur lesquelles on souhaite agir (background-color par exemple ou all pour toute les propriétés liées au sélecteur), on indique ensuite une durée d&#8217;animation (en secondes ou millisecondes), puis le type d&#8217;effet de transition (default, linear, ease-in, ease-out, ease-in-out ou cubic-bezier).<br />
Voici un exemple de propriété :</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;">transition<span style="color: #00AA00;">:</span> all 1s ease-in-out<span style="color: #00AA00;">;</span></pre></div></div>

<p>Les animations de la galerie CSS3 utilisent pleinement les possibilités offertes par les transitions.</p>
<p>Dernière astuce liées à cette propriétés : pour donner cette impression d&#8217;image tournoyante lorsqu&#8217;une miniature est sélectionnée, j&#8217;ai juste initialisée la rotation de l&#8217;image à -360 degrés. Une fois l&#8217;image sélectionnée, l&#8217;image cible (:target) subit une rotation de 0 degré.</p>
<h3>La démonstration</h3>
<p>Voici donc <a title="CSS3 Highlight, une galerie photo full CSS" href="http://clearideaz.com/demo/CSS-Highlight/">la démonstration d&#8217;une galerie full-CSS</a>. Pour le fun, visualisez cette galerie sur différents navigateurs (IE 6, Firefox 3.6, Safari). Vous verrez ainsi que la galerie utilise le concept d&#8217;<a title="La définition WIkipédia de l'amélioration progressive" href="http://fr.wikipedia.org/wiki/Am%C3%A9lioration_progressive">amélioration progressive</a>.</p>
<p>Édit le 04/10/2010 : MAJ de la feuille de style suite au commentaire de mekal. Le zip est à jour également sur <a href="http://github.com/clearideaz/CSS-Highlight" title="Espace de partage de code source Github de Clearideaz">mon espace GitHub</a>.</p>
<ul class="demo">
<li><a title="Visualiser la démo de CSS3 Highlight, une galerie photo full CSS" href="http://clearideaz.com/demo/CSS-Highlight/">Accéder à la démonstration</a></li>
<li><a title="Télecharger la démo de CSS3 Highlight, une galerie photo full CSS" href="http://github.com/clearideaz/CSS-Highlight/zipball/1.0">Télécharger la démo</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2010/05/creer-une-galerie-photo-grace-a-css3/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Astuce pour HTML5</title>
		<link>http://clearideaz.com/2010/05/astuce-html5/</link>
		<comments>http://clearideaz.com/2010/05/astuce-html5/#comments</comments>
		<pubDate>Wed, 26 May 2010 12:37:37 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[astuce]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html]]></category>

		<guid isPermaLink="false">http://clearideaz.com/?p=322</guid>
		<description><![CDATA[Comme vous avez surement pu le constater, il est possible en HTML5 d&#8217;encadrer des balises de type bloc par une balise de type lien inline de cette manière : &#60;a href=&#34;http://www.smashingmagazine.com&#34;&#62; &#60;h1&#62;Smashing Magazine&#60;/h1&#62; &#60;h2&#62;online magazine dedicated to designers and developers.&#60;/h2&#62; &#60;/a&#62; Le lien devient ainsi actif sur l&#8217;ensemble des balises bloc. Ceci évite d&#8217;insérer plusieurs [...]]]></description>
			<content:encoded><![CDATA[<p>Comme vous avez surement pu le constater, il est possible en HTML5 d&#8217;encadrer des balises de type bloc par une balise de type lien inline de cette manière :</p>

<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://www.smashingmagazine.com&quot;</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">h1</span>&gt;</span>Smashing Magazine<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">h1</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">h2</span>&gt;</span>online magazine dedicated to designers and developers.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">h2</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;</span></pre></div></div>

<p>Le lien devient ainsi actif sur l&#8217;ensemble des balises bloc. Ceci évite d&#8217;insérer plusieurs fois le même lien.</p>
<p>Ce balisage marche sur la plupart des navigateurs dont IE6 seulement voilà, sur ce dernier, le curseur n&#8217;est pas correct au survol des balises de type bloc. A la place du pointeur, on à le curseur de type de texte.</p>
<p>Voici ce que l&#8217;on peut ajouter dans la feuille de style pour corriger celà :</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;">a <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">cursor</span><span style="color: #00AA00;">:</span><span style="color: #993333;">pointer</span><span style="color: #00AA00;">;</span> <span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Et miracle, le curseur par défaut des liens fonctionne également sur les balises type bloc.</p>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2010/05/astuce-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Du Parallax avec jQuery et CSS</title>
		<link>http://clearideaz.com/2008/06/du-parallax-avec-jquery-et-css/</link>
		<comments>http://clearideaz.com/2008/06/du-parallax-avec-jquery-et-css/#comments</comments>
		<pubDate>Fri, 06 Jun 2008 09:12:00 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[parallax]]></category>

		<guid isPermaLink="false">http://www.clearideaz.com/?p=15</guid>
		<description><![CDATA[<p>Le <a href="http://fr.wikipedia.org/wiki/D%C3%A9filement" title="Voir la définition de Scrolling Parallax sur Wikipédia">scrolling parallax</a> est une technique qui consiste a créer un pseudo-effet de 3D sur un environnement en 2D. Si vous avez déjà pu jouer aux premières versions de Sonic The Hedgehog, vous comprendrez de quoi je parle. Je me suis amusé, encore une fois avec JQuery, a créer un effet parallax sur une page d’accueil d’un site existant.</p> <p>J’ai repris la page d’accueil de <a href="http://www.silverbackapp.com" title="Se rendre sur le site SilverBack.com">SilverBackApp.com</a> qui utilise déjà un effet Parallax au redimensionnement du navigateur. La technique très subtile consiste a placer les différentes couches de fonds avec des background-position en pourcentage. En jouant justement sur ces valeurs relatives, on peut de ce fait créer un effet intéressant lorsque l’utilisateur redimensionne sa fenêtre.</p> <p>En partant de cette base, j’ai décidé de rajouter une couche Javascript. Le but est de changer la position du fond en fonction de la position de l’image. Pour cela, on va juste récupérer les positions du pointeur et utiliser ces valeurs pour déterminer le positionnement (en pixel cette fois) des différentes images.</p>]]></description>
			<content:encoded><![CDATA[<p>Le <a title="Voir la définition de Scrolling Parallax sur Wikipédia" href="http://fr.wikipedia.org/wiki/D%C3%A9filement">scrolling parallax</a> est une technique qui consiste a créer un pseudo-effet de 3D sur un environnement en 2D. Si vous avez déjà pu jouer aux premières versions de Sonic The Hedgehog, vous comprendrez de quoi je parle. Je me suis amusé, encore une fois avec JQuery, a créer un effet parallax sur une page d’accueil d’un site existant.</p>
<p>J’ai repris la page d’accueil de <a title="Se rendre sur le site SilverBack.com" href="http://www.silverbackapp.com">SilverBackApp.com</a> qui utilise déjà un effet Parallax au redimensionnement du navigateur. La technique très subtile consiste a placer les différentes couches de fonds avec des background-position en pourcentage. En jouant justement sur ces valeurs relatives, on peut de ce fait créer un effet intéressant lorsque l’utilisateur redimensionne sa fenêtre.</p>
<p>En partant de cette base, j’ai décidé de rajouter une couche Javascript. Le but est de changer la position du fond en fonction de la position de l’image. Pour cela, on va juste récupérer les positions du pointeur et utiliser ces valeurs pour déterminer le positionnement (en pixel cette fois) des différentes images.</p>

<p>On obtiendra avec jQuery ce type de code pour la div #frontvines</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;body&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">mousemove</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>event<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#frontvines&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span> 
      backgroundPosition<span style="color: #339933;">:</span> <span style="color: #009900;">&#40;</span>event.<span style="color: #660066;">clientX</span> <span style="color: #339933;">*</span> <span style="color: #CC0000;">1.1</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">'px 0px'</span>
   <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Sur la première ligne, on cherche l’évènement qui indique que l’utilisateur bouge sa souris sur la page. Dans la partie fonction, on place en paramètre la position du curseur pour la réutiliser ensuite pour modifier les propriétés de styles associées à la balise comportant l&#8217;id #frontvines. Pour observer le résultat, rendez-vous sur la page dédié à cette démonstration <a title="Accéder à la première démonstration" href="http://clearideaz.com/demo/05062008/">disponible ici</a>.</p>
<p>Pour aller plus loin, je me suis amusé, dans une <a title="Accéder à la seconde démonstration" href="http://clearideaz.com/demo/06062008/">seconde démonstration</a>, à réutiliser une photo de paysage pour y introduire du parallax. Le principe reste le même, je vous laisse le soin de télécharger le script sur <a title="Accéder à la seconde démonstration" href="http://clearideaz.com/demo/06062008/">la page de la seconde démonstration</a>, vous y trouverez la manière de procéder dans les commentaires du fichier Javascript.</p>
<h3>Quelques liens en rapport avec Parallax :</h3>
<h4>Effet parallax à l’aide de CSS ou de Javascript</h4>
<ul>
<li><a title="Se rendre sur le site Dumago.net" href="http://dumago.net/">Le futur site de service Dumago.net (CSS)</a></li>
<li><a title="Visiter le site Umaghetzeggen.nl" href="http://www.umaghetzeggen.nl/">Effet parallax aux mouvements de la souris sur Umaghetzeggen.nl (Javascript)</a></li>
<li><a title="Accéder au site Dromaeo.com" href="http://dromaeo.com/">Le site des tests de performances Javascript Dromaeo (CSS)</a></li>
<li><a title="Voir la demo sur le site Dvessel.com" href="http://www.dvessel.com/">Démo expérimentale de footer avec effet de vagues (CSS)</a></li>
</ul>
<h4>Utilisation de parallax sous Flash</h4>
<ul>
<li><a title="Se rendre sur le site ff0000.com" href="http://www.ff0000.com/">Une démo assez bluffante en Flash</a></li>
<li><a title="Se rendre sur le site EffectsCod.com" href="http://www.effectscode.com/ImageEffects/DepthField/XML/">Effet de rotation rendu grâce à parallax</a></li>
<li><a title="Aller sur le site de Aviary" href="http://a.viary.com/">Un header construit en parallax</a></li>
<li><a title="Visiter le site Freedent White" href="http://www.freedentwhite.com/index.php/page/fr">Le site Freedent White</a></li>
</ul>
<h4>Tutorial</h4>
<ul>
<li><a title="Voir le tutos à propos de parallax via CSS " href="http://www.sitepoint.com/blogs/2008/01/18/in-the-lab-doing-strange-things-to-css-backgrounds/">Un tutos sur Sitepoint.com sur les effet parallax en CSS</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2008/06/du-parallax-avec-jquery-et-css/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Les hacks c&#8217;est pas bien !</title>
		<link>http://clearideaz.com/2008/04/les-hacks-cest-pas-bien/</link>
		<comments>http://clearideaz.com/2008/04/les-hacks-cest-pas-bien/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 13:35:00 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[htc]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[navigateurs]]></category>

		<guid isPermaLink="false">http://www.clearideaz.com/?p=27</guid>
		<description><![CDATA[<p>La tentation de recourir à des hacks est grande lorsque l'on commence à se lancer dans l'intégration d'un site web. Lorsque l’on s'aperçoit que la page développée s'affiche différemment d'un navigateur à l'autre, on se dit très souvent que c'est le navigateur (Internet Explorer pour ne pas le citer) qui interprète le code ou la feuille de style n'importe comment.</p> <p>Cette réaction est plus ou moins justifiée. Nous sommes tous conscients des lacunes du navigateur Microsoft et plus particulièrement des versions antérieures à la 7. Toutefois, ce n'est pas une raison pour charger sa feuille de style de propriétés invalides en prenant comme bouc émissaire le navigateur de Monsieur Redmond. </p> <p>Une feuille de style doit, au même titre que le document <abbr title="eXtensible HyperText Markup Language">XHTML</abbr>, passer l'épreuve du validateur <abbr title="World Wide Web Consortium">W3C</abbr>. Ce n'est pas en insérant des "_width:" ou encore de "%margin:" dans votre <abbr title="Cascading Style Sheet">CSS</abbr> que vous pourrez vous vantez de faire un site au codage propre. J'irais même jusqu'à dire que <strong>les hacks sont bons pour les fainéants la plupart du temps</strong>.</p> <p>Dernièrement, j'avais fais remarquer à un intégrateur remonté contre <abbr title="Internet Explorer">IE</abbr> que notre boulot perdrait de l'intérêt sans ces soucis de compatibilité. Même si j'affirmais cela ironiquement, je trouve passionnant de découvrir pourquoi telle propriété ne fonctionne pas de la même manière d'un navigateur à l'autre et surtout, comment y remédier.</p>]]></description>
			<content:encoded><![CDATA[<p>La tentation de recourir à des hacks est grande lorsque l&#8217;on commence à se lancer dans l&#8217;intégration d&#8217;un site web. Lorsque l’on s&#8217;aperçoit que la page développée s&#8217;affiche différemment d&#8217;un navigateur à l&#8217;autre, on se dit très souvent que c&#8217;est le navigateur (Internet Explorer pour ne pas le citer) qui interprète le code ou la feuille de style n&#8217;importe comment.</p>
<p>Cette réaction est plus ou moins justifiée. Nous sommes tous conscients des lacunes du navigateur Microsoft et plus particulièrement des versions antérieures à la 7. Toutefois, ce n&#8217;est pas une raison pour charger sa feuille de style de propriétés invalides en prenant comme bouc émissaire le navigateur de Monsieur Redmond. </p>
<p>Une feuille de style doit, au même titre que le document <abbr title="eXtensible HyperText Markup Language">XHTML</abbr>, passer l&#8217;épreuve du validateur <abbr title="World Wide Web Consortium">W3C</abbr>. Ce n&#8217;est pas en insérant des &laquo;&nbsp;_width:&nbsp;&raquo; ou encore de &laquo;&nbsp;%margin:&nbsp;&raquo; dans votre <abbr title="Cascading Style Sheet">CSS</abbr> que vous pourrez vous vantez de faire un site au codage propre. J&#8217;irais même jusqu&#8217;à dire que <strong>les hacks sont bons pour les fainéants la plupart du temps</strong>.</p>
<p>Dernièrement, j&#8217;avais fais remarquer à un intégrateur remonté contre <abbr title="Internet Explorer">IE</abbr> que notre boulot perdrait de l&#8217;intérêt sans ces soucis de compatibilité. Même si j&#8217;affirmais cela ironiquement, je trouve passionnant de découvrir pourquoi telle propriété ne fonctionne pas de la même manière d&#8217;un navigateur à l&#8217;autre et surtout, comment y remédier.</p>

<h3>Les hacks que l&#8217;on pourrait éviter</h3>
<h4>Les images PNG</h4>
<p>Prenons l&#8217;exemple du <abbr title="Portable Network Graphics">PNG</abbr>. Beaucoup de webmasters s&#8217;extasient devant les possibilités de ce format d&#8217;image. L&#8217;utilisation des <a href="http://blog.lablonde.fr/billets/25-la-couche-alpha-des-png-sous-internet-explorer.html" title="Voir un article traitant des possibilités et des caractéristiques du format PNG">différentes couches alpha de transparence</a> offre effectivement de nombreuses possibilités. Seulement voilà, ce format n&#8217;est pas pris en charge par les anciennes versions d’IE. Le hacker en herbe viendra me faire remarquer que l&#8217;on peut remédier à ce problème en utilisant la propriété CSS DX.Transform dans la feuille CSS ou dans un <a href="http://www.zeguigui.com/weblog/archives/2005/01/les_behaviors_m.php" title="Les behaviors, mais qu'est-ce donc ?">fichier .htc</a>. Cette utilisation pose plusieurs soucis :</p>
<ul>
<li>La feuille de style n&#8217;est pas valide W3C.</li>
<li>La feuille CSS n&#8217;est pas censée intégrer ce genre de propriétés ou faire appel à des fichiers chargeant du JavaScript.</li>
<li>Ce hack fait appel au moteur <a href="http://fr.wikipedia.org/wiki/DirectX" title="Voir l'article dédié à Direct X sur Wikipédia">Direct X</a> et selon la version, une simple image peut faire bugger le système d&#8217;exploitation, ce qui est, vous en conviendrez, un peu gênant&#8230;</li>
</ul>
<p>Si vous souhaitez vraiment utilisez le PNG sur Internet Explorer, appelez plutôt un fichier JavaScript pur pour arriver à vos fins.</p>
<p>Parfois, un simple découpage de l&#8217;illustration au format <abbr title="Graphics Interchange Format">GIF</abbr> ou même une image JPEG placée intelligemment peut offrir au visiteur le même effet. <strong>Le PNG n&#8217;est pas une fin en soit</strong>.</p>
<h4>Les pseudo-classes</h4>
<p>Concernant les pseudo-classes, évitez également de passer par un fichier .htc dans votre feuille de style pour intégrer le :hover sur une balise div ou un :target sur une tout autre balise. Encore une fois, si cette utilisation est requise, passez par de pures fonctions JavaScripts.</p>
<h4>Un problème de taille !</h4>
<p>Arrêtons de nous prendre le chou avec les débats philosophiques sur le <a href="http://www.tatane.info/index.php/le-hack-model-box-css" title="Un exemple d'article décrivant un hack de model box">model box</a> ou autre double-margin. Ces problèmes peuvent être aisément contournés. De plus, vous le verrez par vous même, quand on commence avec des hacks de placement ou d&#8217;ajustement de dimension, on en finit plus. <strong>Les hacks attirent les hacks</strong> <img src='http://clearideaz.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Comme vous pourrez le constater sur l&#8217;<a href="http://www.weblogr.fr/demo/23042008/test.html" title="Voir la démonstration sur la gestion des positionnements, padding et margin en CSS">exemple suivant</a>, les soucis de padding ou de margin peuvent parfois être causés par une simple propriété qui n’a pas lieu d&#8217;être. Pour être certain de contrôler pleinement votre mise en page, efforcez-vous de tester plusieurs méthodes de positionnement sans passer par les hacks et testez le résultat sur différents navigateurs. Il y aura toujours une méthode qui fasse plaisir à tout le monde <img src='http://clearideaz.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h3>Pour résumer</h3>
<p>Avant de se décider à utiliser un hack, il faut d&#8217;abord se questionner sur les autres alternatives valables. <strong>Dénigrer IE sans chercher plus loin n&#8217;amènera rien de bon</strong>. N&#8217;intégrez pas de fonctions JavaScripts dans votre feuille de style par le biais de fichiers .htc mais préférez un fichier JavaScript pur. N&#8217;abusez pas du format PNG et ne l&#8217;utilisez qu&#8217;en dernier recours. Privilégiez l&#8217;utilisation de &laquo;&nbsp;!important&nbsp;&raquo; aux notations bidons telles que &laquo;&nbsp;_width:&nbsp;&raquo; ou encore &laquo;&nbsp;%padding:&nbsp;&raquo;. Les hacks CSS c&#8217;est taboo, on en viendra tous à bout.</p>
<div id="encadre-article">
<h3>Quelques précisions s&#8217;imposent</h3>
<p>Au regard de cet article, on peut se demander ce qui est à ranger dans la catégorie des hacks ou non. Si je voulais résumer, j&#8217;engloberais les éléments qui ne valident pas la feuille CSS mais voici une petite liste détaillées :</p>
<ul>
<li>Dans un premier temps, j&#8217;inclus l&#8217;ensemble des propriétés mal orthographiées : &laquo;&nbsp;_width:&nbsp;&raquo;, &laquo;&nbsp;%padding:&nbsp;&raquo; par exemple.</li>
<li>Les inclusions de fichiers .htc pour faire appel à du javascript par exemple.</li>
<li>Les propriétés CSS non reconnues par le W3C tel que &laquo;&nbsp;opacity&nbsp;&raquo;.</li>
<li>Les propriétés en double pour une même classe ou ID (deux propriétés de taille pour un même bloc).</li>
<li>Les appels à Direct X dans la feuille de style.</li>
</ul>
<p>Et voici ce que je ne considère pas comme des hacks :</p>
<ul>
<li>Les sélecteurs non reconnus par tous les navigateurs mais valides W3C tel que &laquo;&nbsp;div &gt; p&nbsp;&raquo; (logique non?).</li>
<li>Les propriétés non reconnues par tous les navigateurs mais valides W3C. &laquo;&nbsp;min-height&nbsp;&raquo; en est un exemple.</li>
<li>Les feuilles de style appelées par des <a href="http://forum.alsacreations.com/faq/faq-53-Qu039est-ce-que-les-commentaires-conditionnels-.html" title="Qu'est-ce que les commentaires conditionnels?">commentaires conditionnels</a> (même si on s&#8217;en passerait bien&#8230;)</li>
</ul></div>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2008/04/les-hacks-cest-pas-bien/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Mon livre de chevet du moment</title>
		<link>http://clearideaz.com/2008/02/mon-livre-du-chevet-du-moment/</link>
		<comments>http://clearideaz.com/2008/02/mon-livre-du-chevet-du-moment/#comments</comments>
		<pubDate>Wed, 06 Feb 2008 08:53:00 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[Accessibilité]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[eyrolles]]></category>
		<category><![CDATA[livre]]></category>
		<category><![CDATA[w3c]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.clearideaz.com/?p=24</guid>
		<description><![CDATA[Actuellement je lis Transcender CSS, un livre d&#8217;Andy Clarke qui est l&#8217;un des designers web les plus doués. Il participe notamment au groupe de travail du W3C et à déjà publié des articles sur le fameux site A List Apart. C&#8217;est LE livre que j&#8217;attendais depuis longtemps. Cet ouvrage, très illustré (j&#8217;adore&#8230;), traite du webdesign [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-thumbnail wp-image-113" title="120225075168_transcendercss_tn" src="http://clearideaz.com/wp-content/uploads/2008/02/120225075168_transcendercss_tn.jpg" alt="120225075168_transcendercss_tn" />Actuellement je lis <em>Transcender CSS</em>, un livre d&#8217;Andy Clarke qui est l&#8217;un des designers web les plus doués. Il participe notamment au groupe de travail du <abbr title="World Wide Web Consortium">W3C</abbr> et à déjà publié des articles sur le fameux site <a title="Visiter le site A List A Part" href="http://www.alistapart.com/">A List Apart</a>. <strong>C&#8217;est LE livre que j&#8217;attendais depuis longtemps</strong>. Cet ouvrage, très illustré (j&#8217;adore&#8230;), traite du webdesign à l&#8217;aide des feuilles de style <abbr title="Cascading Style Sheet">CSS</abbr>. Ma partie préférée concerne l&#8217;élaboration d&#8217;un design web à l&#8217;aide d&#8217;une grille (c&#8217;est d&#8217;ailleurs ce que j&#8217;ai utilisé pour le design de ce blog&#8230;). Andy Clarke évoque également les micro-formats, les règles de base d&#8217;accessibilité. Le point de vue de l&#8217;auteur est parfois discutable mais je pense que <strong>Transcender </strong><abbr><strong>CSS</strong></abbr><strong> peut être considéré comme une référence</strong> en terme de publication sur le graphisme web via <abbr>CSS</abbr>. Un livre à mettre donc entre toutes les mains des webdesigner.</p>
<ul>
<li>Le site web dédié à cet ouvrage : <a title="Visiter le site web dédié à l'ouvrage" href="http://www.transcendingcss.com/">transcendingcss.com</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2008/02/mon-livre-du-chevet-du-moment/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>La pseudo-classe :hover</title>
		<link>http://clearideaz.com/2007/12/la-pseudo-classe-hover/</link>
		<comments>http://clearideaz.com/2007/12/la-pseudo-classe-hover/#comments</comments>
		<pubDate>Tue, 18 Dec 2007 08:50:00 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[hover]]></category>
		<category><![CDATA[pseudo-classe]]></category>
		<category><![CDATA[sémantique]]></category>

		<guid isPermaLink="false">http://www.clearideaz.com/?p=23</guid>
		<description><![CDATA[<p>CSS a introduit des fonctionnalités très importantes pour le webdesign: les pseudo-éléments et les pseudo-classes.</p> <p>Les pseudo-éléments sélectionnent une partie spécifique dans le Doctree (le formatage du document source) à partir des informations déjà données par ce dernier: nom, attribut... De fait, on peut appliquer un style sur une partie spécifique du document. Par exemple, avec le pseudo-élement :first-letter permet d’appliquer un style sur la première lettre d’un paragraphe. En combinant cette propriété avec le pseudo-classe :first-child, on peut alors créer une lettrine. </p> <p>Les pseudo-classes, quant à eux, ciblent des éléments sans forcément prendre en compte les informations renvoyées par le Doctree. Elles ne se déduisent donc pas de ce dernier. (On notera toutefois deux exceptions: :first-child et :lang). Une propriété peut être générée dynamiquement par l’action de l’utilisateur sur le document.</p> <p>La pseudo-classe qui nous intéresse dans le cas présent est :hover. Elle offre un certains nombre de possibilité que nous allons voir en détail en utilisant plusieurs exemples. Comme beaucoup de pseudo-classes et pseudo-éléments, elle connait des problèmes de compatibilités avec les navigateurs strictement inférieurs à IE 7. IE ne permet cette propriété que sur les balises de liens. Pour résoudre ces lacunes, on peut utiliser le hack JavaScript de Suckerfish pour implémenter la propriété :hover au vieux navigateurs IE.</p>]]></description>
			<content:encoded><![CDATA[<p>CSS a introduit des fonctionnalités très importantes pour le webdesign: les pseudo-éléments et les pseudo-classes.</p>
<p>Les pseudo-éléments sélectionnent une partie spécifique dans le Doctree (le formatage du document source) à partir des informations déjà données par ce dernier: nom, attribut&#8230; De fait, on peut appliquer un style sur une partie spécifique du document. Par exemple, avec le pseudo-élement :first-letter permet d’appliquer un style sur la première lettre d’un paragraphe. En combinant cette propriété avec le pseudo-classe :first-child, on peut alors créer une lettrine.</p>
<p>Les pseudo-classes, quant à eux, ciblent des éléments sans forcément prendre en compte les informations renvoyées par le Doctree. Elles ne se déduisent donc pas de ce dernier. (On notera toutefois deux exceptions: :first-child et :lang). Une propriété peut être générée dynamiquement par l’action de l’utilisateur sur le document.</p>
<p>La pseudo-classe qui nous intéresse dans le cas présent est :hover. Elle offre un certains nombre de possibilité que nous allons voir en détail en utilisant plusieurs exemples. Comme beaucoup de pseudo-classes et pseudo-éléments, elle connait des problèmes de compatibilités avec les navigateurs strictement inférieurs à IE 7. IE ne permet cette propriété que sur les balises de liens. Pour résoudre ces lacunes, on peut utiliser le hack JavaScript de Suckerfish pour implémenter la propriété :hover au vieux navigateurs IE.</p>

<p>D&#8217;un point de vue sémantique, les exemples ne sont pas toujours corrects. La raison? J’ai fais appel à des balises liens pour chaque exercice afin que le résultat soit visible sur tout les navigateurs, y compris les IE antérieurs à la version 7. Hors, les liens sont inactifs et ne lient à aucune page. Dans le meilleur des cas, il faudrait utiliser des balises span ou div mais il s’agit juste, dans le cas présent, de rendre compte des possibilités offertes par CSS sans utiliser le moindre JavaScript. Hormis la démonstration 2, l’ensemble des exemples fonctionnent avec les principaux navigateurs sur le marché. Vous trouverez toutes les explications complémentaires dans la feuille css associée au démos.</p>
<h3>Démonstration 1</h3>
<p><a title="Voir la démonstration n°1" href="http://clearideaz.com/demo/15052007hover/#demo1"><img src="http://clearideaz.com/wp-content/uploads/2007/12/public_demo1.jpg" alt="Démo 1 - pseudo-class :hover" title="Démo 1 - pseudo-class :hover" width="390" height="160" class="alignnone size-full wp-image-137" /></a></p>
<p>Pour le premier exemple, on construit un menu traditionnel et donc les différents items changeront d’apparence au survol de la souris. Pour cela, on utilise une simple image de fond qui servira à la fois lorsque le menu sera inactif et au moment ou le pointeur se dirigera au dessus de la zone du lien. Pour cela, on change simplement la position du fond d’écran lors de l’interaction de l’utilisateur. On modifie également le padding gauche du texte pour créer cet effet de déplacement.</p>
<ul>
<li><a title="Voir la démonstration n°1" href="http://clearideaz.com/demo/15052007hover/#demo1">Voir la démonstration n°1</a></li>
</ul>
<h3>Démonstration 2</h3>
<p><a title="Voir la démonstration n°2" href="http://clearideaz.com/demo/15052007hover/#demo2"><img src="http://clearideaz.com/wp-content/uploads/2007/12/public_demo2.jpg" alt="Démo 2 : pseudo-class :hover" title="Démo 2 : pseudo-class :hover" width="390" height="160" class="alignnone size-full wp-image-139" /></a></p>
<p>Sur la seconde démonstration, nous réalisons une simple galerie CSS qui va permettre aux utilisateurs d’agrandir la miniature au simple passage de souris sur la zone de lien. Pour cet exemple, on cache dans un premier temps la balise qui contient la version agrandie de l’image. Le plus important est d’inclure la balise dans celle du lien car c’est l’action :hover de ce lien qui va permettre de rendre visible la balise.</p>
<ul>
<li><a title="Voir la démonstration n°2" href="http://clearideaz.com/demo/15052007hover/#demo2">Voir la démonstration n°2</a></li>
</ul>
<h3>Démonstration 3</h3>
<p><a title="Voir la démonstration n°3" href="http://clearideaz.com/demo/15052007hover/#demo3"><img src="http://clearideaz.com/wp-content/uploads/2007/12/public_demo3.jpg" alt="Démo 3 : pseudo-class :hover" title="Démo 3 : pseudo-class :hover" width="390" height="160" class="alignnone size-full wp-image-140" /></a></p>
<p>Cette démonstration montre les possibilités étendues de la pseudo-classe :hover. On dresse ici une carte du monde. On place les villes sur le coté et au simple passage de la souris, une flèche nous indique sa position sur la carte. En fait, au départ, on cache la flèche en lui donnant une position extrême dans la zone de block. Au moment du survol, on agrandit la zone de block pour placer la flèche au bon endroit sur la carte.</p>
<ul>
<li><a title="Voir la démonstration n°3" href="http://clearideaz.com/demo/15052007hover/#demo3">Voir la démonstration n°3</a></li>
</ul>
<h3>Démonstration 4</h3>
<p><a title="Voir la démonstration n°4" href="http://clearideaz.com/demo/15052007hover/#demo4"><img src="http://clearideaz.com/wp-content/uploads/2007/12/public_demo4.jpg" alt="Démo 4 : pseudo-class :hover" title="Démo 4 : pseudo-class :hover" width="390" height="160" class="alignnone size-full wp-image-141" /></a></p>
<p>Un petit exemple pour se divertir. Un petit jeu dans lequel il faut découvrir qui se cache derrière les différentes cases. Au survol des zones, on peut découvrir certaines parties de l’image. En fait, on place plusieurs zones carrées avec un fond coloré et au passage de souris, on supprime tout simplement le fond.</p>
<ul>
<li><a title="Voir la démonstration n°4" href="http://clearideaz.com/demo/15052007hover/#demo4">Voir la démonstration n°4</a></li>
</ul>
<h3>Conclusion</h3>
<p>Comme on a pu le voir, la pseudo-classe :hover offre de nombreuses possibilités. Elle offre du dynamisme aux mises en page et une certaine rapidité d’exécution. Il est dommage que Internet Explorer (comme toujours) implémente mal cette propriété et il faudra bien souvent recourir à des hacks en tout genre pour combler ces faiblesses et de fait, on perd tout l’intérêt des pseudo-classes CSS.</p>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2007/12/la-pseudo-classe-hover/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Améliorer Internet Explorer (toutes versions)</title>
		<link>http://clearideaz.com/2007/12/ameliorer-internet-explorer-toutes-versions/</link>
		<comments>http://clearideaz.com/2007/12/ameliorer-internet-explorer-toutes-versions/#comments</comments>
		<pubDate>Fri, 14 Dec 2007 09:02:00 +0000</pubDate>
		<dc:creator>Olivier G.</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[dean]]></category>
		<category><![CDATA[edwards]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://www.clearideaz.com/?p=5</guid>
		<description><![CDATA[Dean Edwards est un génie. Internet Explorer a toujours été réputé pour être un navigateur très en retard sur les autres. Un grand nombre de sélecteurs et de propriétés CSS ne fonctionnent tout simplement pas sous les versions inférieures à IE7. C&#8217;est là que Dean Edwards entre en jeu. Ce programmeur a conçu une véritable [...]]]></description>
			<content:encoded><![CDATA[<p>Dean Edwards est un génie. Internet Explorer a toujours été réputé pour être un navigateur très en retard sur les autres. Un grand nombre de sélecteurs et de propriétés <abbr title="Cascading Style Sheets">CSS</abbr> ne fonctionnent tout simplement pas sous les versions inférieures à IE7. C&#8217;est là que Dean Edwards entre en jeu. Ce programmeur a conçu une véritable librairie permettant d&#8217;émuler par le biais de fonctions javascript, les fonctionnalités <abbr title="Cascading Style Sheets">CSS</abbr>&nbsp;2 absentes de IE. A l&#8217;origine, son objectif était de contrer la pratique des hacks <abbr title="Cascading Style Sheets">CSS</abbr> qui rendent les feuilles de style invalides. Mais il ne s&#8217;est pas arrêté là en implémentant certains sélecteur <abbr title="Cascading Style Sheets">CSS</abbr>&nbsp;3 dans le navigateur certifié Windaube. La dernière version sortie date de août 2005 donc je n&#8217;apporte pas une nouveauté, mais ce genre de trésor peut en intéresser un très grand nombre <img src='http://clearideaz.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Vous pouvez télécharger l&#8217;ensemble des fichiers sur <a hreflang="en" title="Se rendre sur le site internet personnel de Dean Edwards" href="http://dean.edwards.name/ie7/">son site internet personnel</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://clearideaz.com/2007/12/ameliorer-internet-explorer-toutes-versions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

