<?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>Le Blog de Nukleo &#187; CSS</title>
	<atom:link href="https://www.nukleo.fr/blog/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.nukleo.fr/blog</link>
	<description>Un blog de webdesign et développement</description>
	<lastBuildDate>Tue, 04 Mar 2014 15:50:19 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>CSS3PIE : Des effets CSS3 pour Internet Explorer 6 à 8</title>
		<link>https://www.nukleo.fr/blog/css3pie-effets-css3-internet-explorer-6-8/</link>
		<comments>https://www.nukleo.fr/blog/css3pie-effets-css3-internet-explorer-6-8/#comments</comments>
		<pubDate>Fri, 25 Mar 2011 08:02:26 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[IE]]></category>

		<guid isPermaLink="false">http://www.nukleo.fr/blog/?p=27</guid>
		<description><![CDATA[La sortie récente d&#8217;Internet Explorer 9 fête la tant attendue arrivée de certains effets CSS3, notamment les box-shadow (ombre portée) et border-radius (coins arrondis). Mais l&#8217;adoption de ce nouvel opus risque d&#8217;être aussi longue que pour les versions précédentes et on va certainement devoir composer avec IE7 et 8 pendant longtemps. Et pourtant on aimerai<br /><a href="https://www.nukleo.fr/blog/css3pie-effets-css3-internet-explorer-6-8/">Lire l'article</a>]]></description>
			<content:encoded><![CDATA[<p>La sortie récente d&rsquo;<a href="http://www.beautyoftheweb.com/">Internet Explorer 9</a> fête la tant attendue arrivée de certains effets CSS3, notamment les <strong>box-shadow</strong> (ombre portée) et <strong>border-radius</strong> (coins arrondis). Mais l&rsquo;adoption de ce nouvel opus risque d&rsquo;être aussi longue que pour les versions précédentes et on va certainement devoir composer avec IE7 et 8 pendant longtemps. Et pourtant on aimerai (en tant que webdesigner) pouvoir bénéficier de ces effets CSS3 que tous les autres navigateurs modernes permettent depuis un certain temps déjà.<span id="more-27"></span></p>
<h3>box-shadow et border-radius : les solutions possibles</h3>
<p>A mon sens il n&rsquo;y a que 3 solutions possibles à ce problème :</p>
<ul>
<li>Utiliser des images et compliquer à la fois le HTML et les CSS</li>
<li>Faire l&rsquo;impasse avec des techniques de dégradation gracieuse (graceful degradation) à savoir : une feuille de styles conditionnelle</li>
<li>Un script javascript tel que <a href="http://www.dillerdesign.com/experiment/DD_roundies/">DD_roundies</a> pour les coins arrondis et l&rsquo;utilisation des filtres propriétaires d&rsquo;IE pour les ombres portées.</li>
</ul>
<p>C&rsquo;est là qu&rsquo;intervient une quatrième solution&#8230;</p>
<h3>CSS3PIE : la solution la plus aboutie</h3>
<p>Ce petit script permet de bénéficier simplement des effets que nous recherchons &#8211; entre autres &#8211; avec Internet Explorer, versions 6 à 8. Il supporte les effets suivants :</p>
<ul>
<li>border-radius</li>
<li>box-shadow</li>
<li>border-image</li>
<li>dégradés</li>
<li>couleurs RGBA</li>
</ul>
<p>ainsi que quelques autres propriétés à l&rsquo;aide de règles spécifiques au script (<a href="http://css3pie.com/documentation/supported-css3-features/">voir la liste complète des propriétés supportées</a>).</p>
<h3>Mise en place simple</h3>
<p>Pour installer CSS3PIE c&rsquo;est très simple : <a href="http://css3pie.com/">téléchargez CSS3PIE</a>, décompressez l&rsquo;archive et glissez le fichier PIE.htc où bon vous semble sur votre serveur. <strong>Il faudra par contre bien faire attention à l&rsquo;endroit où vous l&rsquo;aurez placé.</strong></p>
<h4>Utilisation</h4>
<p>Créez une règle CSS utilisant les propriétés convoitées :</p>
<pre class="brush: css; title: ; notranslate">
.arrondi-ombre {
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	-moz-box-shadow: 5px 5px 5px #CCC;
	-webkit-box-shadow: 5px 5px 5px #CCC;
	box-shadow: 5px 5px 5px #CCC;
	behavior: url(/chemin/vers/PIE.htc)
}
</pre>
<p>Et voilà, si tout c&rsquo;est bien passé Internet Explorer affiche correctement les coins arrondis et l&rsquo;ombre portée ! <strong>Notez bien que l&rsquo;url vers votre fichier PIE.htc commence par un /</strong> &#8211; permettant d&rsquo;y accéder à partir de la racine de votre site. Ceci est important car, contrairement aux images, le fichier est servi à partir de l&rsquo;url sur laquelle vous vous trouvez et non à partir du fichier CSS. Le mieux est donc d&rsquo;utilser une url absolue et non relative.<br />
Il se peut tout de même que le script ne fonctionne pas pour plusieurs raisons&#8230;</p>
<h3>Bugs et solutions</h3>
<h4>Si votre serveur n&rsquo;emploi pas le bon <code>content-type</code> pour les fichiers .htc :</h4>
<p>Editez votre .htacces en ajoutant la ligne (vers le haut) : <strong><code>AddType text/x-component .htc</code></strong>.</p>
<p>Si cela ne fonctionne pas (souvent le cas sur des hébergeurs mutualisés, il faudra utiliser le fichier PIE.php (fourni dans l&rsquo;archive) qui s&rsquo;en chargera. Il suffira de placer ce fichier au <strong>même endroit que le fichier PIE.htc</strong> et modifier la règle CSS en conséquence : <strong><code>behavior: url(/chemin/vers/PIE.php)</code></strong>.</p>
<p>Si cela ne fonctionne pas non plus (peu probable mais sait-on jamais), il faudra se résoudre à utiliser la version javascript : PIE.js qui est moins avantageuse en termes de rapidité d&rsquo;éxécution (PIE.htc est appliqué de manière asynchrone alors que PIE.js l&rsquo;est de manière synchrone), mais aussi car il faudra l&rsquo;activer via du javascript en l&rsquo;applicant à des éléments manuellement &#8211; mais cela fonctionne parfaitement avec des librairies comme jQuery (<a href="http://css3pie.com/documentation/pie-js/">voir la documentation</a>).</p>
<h4>Disparition d&rsquo;éléments (images de fond, bordures et ombres) :</h4>
<p>CSS3PIE fonctionne en utilisant le <strong><code>z-index</code></strong> et s&rsquo;il est appliqué à des éléments en position <strong><code>static</code></strong> ceux-ci vont disparaître puisque la position <strong><code>static</code></strong> ne participe pas à l&rsquo;empilement <strong><code>z-index</code>.</strong> La solution à ce problème est de régler l&rsquo;élément sur lequel est appliqué CSS3PIE en <strong><code>position: relative</code></strong> ou son parent en <strong><code>position: relative</code> avec un <code>z-index</code>.</strong></p>
<h4>Utilisez uniquement les propriétés raccourcies</h4>
<p>Le script ne supporte que les propriétés raccourcies, par exemple :</p>
<pre class="brush: css; title: ; notranslate">
border-top-left-radius: 10px;
</pre>
<p>ne fonctionnera pas alors que :</p>
<pre class="brush: css; title: ; notranslate">
border-radius: 10px 0 0 0;
</pre>
<p>fonctionnera</p>
<h3>Conclusion</h3>
<p>Sans être absolument parfait, <a href="http://css3pie.com/">CSS3PIE</a> est tout de même une excellente solution (si ce n&rsquo;est la meilleure) pour utiliser simplement les effets CSS3 les plus demandés par les webdesigners. Une dernière remarque : si vous l&rsquo;utilisez sur beaucoup d&rsquo;éléments cela aura malheureusement pour effet de ralentir le rendu de la page (quelques secondes pour plus d&rsquo;une centaine d&rsquo;éléments), mais ca fonctionnera quand même&#8230;</p>
<p>Happy coding :)</p>
]]></content:encoded>
			<wfw:commentRss>https://www.nukleo.fr/blog/css3pie-effets-css3-internet-explorer-6-8/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
