<?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>LoïcG &#187; css</title>
	<atom:link href="http://blog.loicg.net/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.loicg.net</link>
	<description>Carnet d&#039;un développeur web</description>
	<lastBuildDate>Sat, 28 Aug 2010 13:11:58 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Cache du contenu statique en .htaccess</title>
		<link>http://blog.loicg.net/webdev/cache-contenu-statique-htaccess/</link>
		<comments>http://blog.loicg.net/webdev/cache-contenu-statique-htaccess/#comments</comments>
		<pubDate>Wed, 19 May 2010 15:37:36 +0000</pubDate>
		<dc:creator>Loïc</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[bande passante]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://blog.loicg.net/?p=928</guid>
		<description><![CDATA[Le temps de chargement des pages est (depuis longtemps) un point crucial dans le développement web. Il existe de nombreuses façons d&#8217;accélérer ce temps de chargement, dont une, la mise en cache par le navigateur des éléments statiques. Le principe : Sur votre site vous utilisez une feuille de style, des fichiers javascripts ainsi que [...]]]></description>
			<content:encoded><![CDATA[<p>Le temps de chargement des pages est (depuis longtemps) un point crucial dans le développement web. Il existe de nombreuses façons d&#8217;accélérer ce temps de chargement, dont une, la mise en cache par le navigateur des éléments statiques.<span id="more-928"></span></p>
<h1>Le principe :</h1>
<p>Sur votre site vous utilisez une feuille de style, des fichiers javascripts ainsi que des images qui sont les mêmes sur plusieurs de vos pages (voir sur toutes&#8230;). L&#8217;objectif est de ne les servir qu&#8217;une seule fois à chaque visiteur.<br />
Pour cela, les navigateurs ont un cache (également appelés &#8220;fichiers temporaires&#8221;), qui lui permet de réutiliser des éléments qu&#8217;il a déjà chargé, pour peu que votre site lui ai indiqué de tenir ce comportement.</p>
<h1>Gain estimé :</h1>
<p>Les éléments statiques sont assez nombreux et volumineux, que ce soit les librairies javascript (jQuery, les lightbox, etc &#8230;) ou encore les images (une belle bannière en header du site, etc &#8230;), on accumule les kilo-octets&#8230;<br />
Lorsque ces éléments sont mis en cache, le volume de données transférées se voit ainsi divisé par 6 ou 10.</p>
<h1>Comment ?</h1>
<p>Ce comportement peut être défini dans un fichier .htaccess, voici le code à insérer :</p>
<pre><span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; line-height: 18px; font-size: 12px; white-space: pre;">&lt;ifModule mod_headers.c&gt;
  &lt;FilesMatch "\.(js|css|ico|jpg|jpeg|png|gif)$"&gt;
    Header set Expires "Thu, 15 Jan 2015 20:00:00 GMT"
    Header unset ETag
    FileETag None
    Header unset Last-Modified
    Header set Cache-Control "max-age=864000, public"
  &lt;/FilesMatch&gt;
&lt;/ifModule&gt;</span></pre>
<p><span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; line-height: 18px; font-size: 12px; white-space: pre;">Il faut également activer le mod_headers sur le serveur Apache (par ex : &#8220;sudo a2enmod headers&#8221; sous debian/ubuntu)</span></p>
<h1>Analyse du code :</h1>
<ul>
<li>&#8220;Header set Expires &#8230;&#8221; : indique au navigateur un date d&#8217;expiration dans un futur (assez) lointain</li>
<li>&#8220;Header unset ETag&#8221; : va nous permettre de débrayer le système de validation de contenu du navigateur, ainsi c&#8217;est notre Cache-Control qui va gérer la mise en cache.</li>
<li>&#8220;FileEtag None&#8221; : idem ci-dessus</li>
<li>&#8220;Header unset Last-Modified&#8221; : comme pour les Etag, nous ne voulons pas que ce soit le navigateur qui décide de rafraichir le contenu</li>
<li>&#8220;Header set Cache-Control &#8230;&#8221; : Nous indiquons au cache du navigateur que le contenu est valide pendant 10 jours (exprimé en secondes)</li>
</ul>
<h1>Conclusion :</h1>
<p>Cette technique est assez simple à mettre en place, permet d&#8217;économiser de la bande passante et de servir ses pages plus rapidement à chaque visiteur (à partir de sa seconde page vue&#8230;).<br />
Il y a donc tout à gagner en adoptant cette pratique.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.loicg.net/webdev/cache-contenu-statique-htaccess/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Sélecteurs et héritage en CSS</title>
		<link>http://blog.loicg.net/webdev/selecteurs-heritage-css/</link>
		<comments>http://blog.loicg.net/webdev/selecteurs-heritage-css/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 10:11:42 +0000</pubDate>
		<dc:creator>Loïc</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://blog.loicg.net/?p=847</guid>
		<description><![CDATA[Les feuilles de styles sont bien pratiques car elles permettent de déclarer des styles globaux ou propres à chacun des éléments d&#8217;une page HTML. Malheureusement, il n&#8217;est pas toujours facile de savoir quelle déclaration l&#8217;emportera au final. Je vais donc tenter de résumer, simplement, le principe qui permet au navigateur de savoir quelle déclaration appliquer [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>Les feuilles de styles sont bien pratiques car elles permettent de déclarer des styles globaux ou propres à chacun des éléments d&#8217;une page HTML.<br />
Malheureusement, il n&#8217;est pas toujours facile de savoir quelle déclaration l&#8217;emportera au final.</p>
<p>Je vais donc tenter de résumer, simplement, le principe qui permet au navigateur de savoir quelle déclaration appliquer pour un élément grâce au &#8220;poids&#8221; de son sélecteur.</p>
<div id="attachment_862" class="wp-caption aligncenter" style="width: 250px"><a href="http://www.flickr.com/photos/mar00ned/73144557/"><img class="size-full wp-image-862 " title="Une histoire de poids" src="http://blog.loicg.net/wp-content/uploads/2010/04/73144557_a08f6bb08c_m.jpg" alt="" width="240" height="159" /></a><p class="wp-caption-text">Crédit photo : M4r00n3d</p></div>
<p><span id="more-847"></span></p>
<h1><strong>Une histoire de poids :</strong></h1>
<ul>
<li>Balise HTML : 1 point, par exemple : div{&#8230;}</li>
<li>Classe : 10 points, par exemple : .article{&#8230;}</li>
<li>Id : 100 points, par exemple : #header{&#8230;}</li>
<li>Déclaration &#8220;inline&#8221; (dans le code HTML) : 1000 points, par exemple : &lt;div style=&#8221;&#8230;&#8221;&gt;&lt;/div&gt;</li>
</ul>
<p>A noter, qu&#8217;à &#8220;poids&#8221; égal, c&#8217;est la dernière déclaration qui l&#8217;emporte.</p>
<h2>Exemples :</h2>
<ul>
<li>#test { background-color:red } -&gt; 100 points</li>
<li>div.toto {float:left} -&gt; 10+1 = 11 points</li>
<li>body #header div -&gt; 1+100+1 =<strong> <span style="font-weight: normal;">102 points</span></strong></li>
</ul>
<p>etc&#8230;</p>
<h1>Concrètement :</h1>
<p>Si vous déclarez :</p>
<pre>form.inscription input{ width:100px }
input.email { width:130px }</pre>
<p>A l&#8217;affichage, le champ &#8220;Email&#8221; s&#8217;affichera avec une largeur de 100px.<br />
Car la première déclaration a un poids de 12 points alors que la seconde (qui peut paraitre plus précise) n&#8217;a qu&#8217;un poids de 11 points. 12&gt;11 (sisi, promis), donc la première déclaration l&#8217;emporte.</p>
<h1>L&#8217;attribut !important :</h1>
<p>L&#8217;attribut !important donne une priorité absolue, un &#8220;poids&#8221;infini à la déclaration qui le précède. Du coup, les déclarations portant la mention !important prendront toujours le dessus sur les autres déclarations, aussi précises soient-elles, il l&#8217;emporte même sur les déclarations dites &#8220;inline&#8221;. (Ce qui peut devenir gênant si vous avez besoin de préciser le style d&#8217;un élément directement dans son code HTML)</p>
<p>Ainsi :</p>
<ul>
<li>body div.test { background-color: blue } -&gt; 1+1+10 = 12 points</li>
<li>body div.test { background-color: blue !important } -&gt; 1+1+10+infini = infini</li>
</ul>
<h1>Le cas Internet Explorer :</h1>
<p>On ne peut parler de feuilles de style sans parler de la lignée Internet Explorer.</p>
<ul>
<li>IE6 ne prendra pas en compte l&#8217;attribut !important. Ainsi, il appliquera bêtement la dernière déclaration trouvée pour un élément.</li>
<li>IE7 prendra en compte les poids, sauf si vous êtes en quirk-mode ou que le doctype n&#8217;a pas été déclaré (auxquels cas, il se comportera comme IE6)</li>
<li>IE8 semble respecter correctement les priorités des déclarations</li>
<li>IE9 devrait se comporter de manière identique à IE8 (normalement ^^)</li>
</ul>
<p>Vous l&#8217;aurez compris, cette analogie entre le type de sélecteur et &#8220;poids&#8221; est une excellente méthode pour organiser ou debugger vos feuilles de styles.</p>
<p>Peu être avez-vous d&#8217;autres astuces concernant les feuilles de styles et leurs déclarations. N&#8217;hésitez pas à profiter des commentaires pour partager à votre tour ces astuces.</p>
<p><em>Cet article est laaaargement inspiré des articles de </em><a href=" http://net.tutsplus.com/tutorials/html-css-techniques/quick-tip-understanding-css-specificity/"><em>Tutplus</em></a><em> ,</em><a href="http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/"><em> Smashing Magazine</em></a><em> et </em><a href="http://www.electrictoolbox.com/using-important-css/"><em>Electric Toolbox</em></a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.loicg.net/webdev/selecteurs-heritage-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Débuter sainement avec les CSS</title>
		<link>http://blog.loicg.net/webdev/debuter-sainement-css-feuilles-styles/</link>
		<comments>http://blog.loicg.net/webdev/debuter-sainement-css-feuilles-styles/#comments</comments>
		<pubDate>Fri, 27 Feb 2009 07:00:15 +0000</pubDate>
		<dc:creator>Loïc</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[WebDev]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[tuto]]></category>

		<guid isPermaLink="false">http://blog.loicg.net/?p=591</guid>
		<description><![CDATA[Une bonne feuille des style est un élément essentiel pour obtenir un design digne de ce nom. Cet article n&#8217;a pas pour vocation de vous apprendre des astuces, trucs et autres méthodes pour améliorer vos connaissances des CSS, mais simplement vous aider à mieux les concevoir. Pour rappel, une feuille de style est un document [...]]]></description>
			<content:encoded><![CDATA[<p>Une bonne feuille des style est un élément essentiel pour obtenir un design digne de ce nom. Cet article n&#8217;a pas pour vocation de vous apprendre des astuces, trucs et autres méthodes pour améliorer vos connaissances des CSS, mais simplement vous aider à mieux les concevoir.<span id="more-591"></span></p>
<p><em>Pour rappel, une feuille de style est un document qui permet d&#8217;habiller tous les éléments HTML de votre page pour la rendre plus élégante et attrayante aux yeux des visiteurs. </em></p>
<p>Cet habillage se fait par une syntaxe claire, mais, dans les grosses pages, les éléments HTML et leurs classes peuvent être nombreux, et par conséquent, la feuille de style devient vite un vrai <span style="text-decoration: line-through;">bordel ?</span> <span style="text-decoration: line-through;">bazard ?</span> oui, un vrai bordel.</p>
<p>Ainsi, il devient vite indispensable, lorsqu&#8217;on attaque un gros projet, de se montrer organisé et méthodique avec tous ce genre de scripts.</p>
<p>Voici donc les étapes que j&#8217;applique (en théorie) sur de &#8220;gros&#8221; projets. (par gros, comprenez que les éléments HTML à habiller sont assez nombreux &#8230;)</p>
<h3>1/ Organiser ses balises</h3>
<p>L&#8217;organisation des balises est un vaste débat, il y a les partisans du rangement alphabétique (ou plutôt alphanumérique), et ceux qui bossent sur la hiérarchisation, suivant ainsi l&#8217;organisation du document HTML à habiller.</p>
<p>Des deux méthodes (qui ont chacune leurs avantages et leurs inconvénients), ma préférence va à la seconde.<br />
La raison de mon choix est toute simple : j&#8217;aime que mes feuilles de styles suivent (à peu près) l&#8217;ordre de mon document HTML. En principe, je pars de l&#8217;élément le plus gros, grand, englobant, bref de toute façon c&#8217;est souvent la balise html elle-même. Pour finir par mon élément le plus petit, enfant, le dernier de la hierarchie (c&#8217;est souvent un em ou un td).</p>
<blockquote><p>html{/*la première balise*/}</p>
<p style="padding-left: 30px;">body{/*sa descendante/fille*/}</p>
<p style="padding-left: 30px;">div#header{/*mon premier cadre*/}</p>
<p style="padding-left: 60px;">div#logo{/*le logo se trouvera dans mon header*/}</p>
<p style="padding-left: 30px;">div.corpsdelapage{/**/}</p>
<p>etc&#8230;</p></blockquote>
<p>Ainsi, je retrouve (normalement) mes balises.</p>
<h3>1bis/ Ranger les propriétés</h3>
<p>Tout comme l&#8217;ordre des balises, l&#8217;ordre des propriétés définies à l&#8217;intérieur de celles-ci n&#8217;a aucune importance pour les navigateurs, en revanche, il peut revêtir une importance capital pour vous ou les développeurs qui passent derrière vous.</p>
<p>Dans une logique toute <span style="text-decoration: line-through;">logique</span> <span style="text-decoration: line-through;">bête</span> simple, je classe donc mes propriétés par ordre alphabétique.</p>
<blockquote><p>div.monJouliDiv{<br />
background : #112211;<br />
border : 1px solid #ccc;<br />
height : 20px; //etc &#8230;<br />
}</p></blockquote>
<h3>2/ Reset pour tous</h3>
<p>Je ne vous invite pas à redémarrer votre ordinateur, ni à fermer cette page (surtout pas ^^), mais je vous propose d&#8217;instaurer des valeurs par défaut cohérentes à vos balises.<br />
Quand on attaque un habillage en partant de zéro et/ou lorsqu&#8217;on souhaite réaliser une page compatible avec tous les navigateurs, on se heurte souvent à des décalages, des cadres qui &#8220;sautent&#8221;, se chevauchent, etc &#8230;.</p>
<p>La raison en est simple : les navigateurs imposent un style par défaut pour chaque balise HTML. Le reset est donc un manière de pallier à ce genre de problèmes. Voici comment je (et de nombreux développeurs, intégrateurs et designeurs) procède :</p>
<blockquote><p>html, body, div, h1, h2, h3,  ul, ol,  li, p,  form, fieldset, table, th, td { margin: 0; padding: 0; } // Placez les balises selon votre document HTML</p></blockquote>
<h3>3/Soignez votre &#8220;présentation&#8221;</h3>
<p>Je sais que les scripts ne sont pas la partie visible de votre site mais il est important (à mes yeux) d&#8217;en soigner l&#8217;écriture.<br />
Il existe de nombreuses manières de mettre en page ses balises et leurs propriétés.</p>
<p>Personnellement, je laisse mes propriétés en ligne lorsqu&#8217;elles sont moins de 4 par balises, au delà, je mets des retours à la ligne pour chacune (en prenant soin d&#8217;indenter mes lignes d&#8217;une tabulation).</p>
<p>body{margin:0;padding:0}</p>
<blockquote><p>h1{<br />
border : 1px dashed #000;<br />
font-size : 50pt; //ça devrait être lisible &#8230;<br />
letter-spacing : 30px;<br />
text-decoration:none; //surtout pas de blink, avec une police aussi grosse ^^<br />
//etc&#8230;<br />
}</p></blockquote>
<h3>4/ Commentez !!!</h3>
<p>Les commentaires constituent le point de repère principal pour vous y retrouver dans toutes ces balises, mots en anglais et autres #.* etc &#8230; De plus, je fais parti des petits fouineurs, des types qui pour une raison ou une autre vont jeter un coup d&#8217;œil au code source d&#8217;un site, à ses javascripts ainsi qu&#8217;à ces feuilles de styles, donc merci de commenter ça me facilitera la tâche <img src='http://blog.loicg.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Tout comme en PHP et Javascript (ainsi qu&#8217;en C/C++, et bien d&#8217;autres langages), les commentaires sont soit :</p>
<ul>
<li>précédés d&#8217;un double slash  : //mon commentaire se terminera en fin de ligne</li>
<li>ou alors entourés par /* et */ : /* ce commentaire se finira après ce symbole */</li>
</ul>
<p>Évidemment, certains de ces conseils vous sembleront logiques et simples, mais je pense qu&#8217;ils sont loin d&#8217;être inutiles pour quiconque souhaite attaquer sainement avec les CSS.</p>
<p>Et vous (oui, vous qui avez eu le courage de tout lire jusqu&#8217;au bout ^^), avez-vous d&#8217;autres astuces à partager ?</p>
<p style="text-align: right;"><em>Cet article est inspiré de <a title="writing better css" href="http://net.tutsplus.com/tutorials/html-css-techniques/5-tips-to-writing-better-css/">celui-ci</a></em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.loicg.net/webdev/debuter-sainement-css-feuilles-styles/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Minify, réduisez et réunissez vos fichiers CSS et Javascript</title>
		<link>http://blog.loicg.net/webdev/minify-reduisez-et-reunissez-vos-fichiers-css-et-javascript/</link>
		<comments>http://blog.loicg.net/webdev/minify-reduisez-et-reunissez-vos-fichiers-css-et-javascript/#comments</comments>
		<pubDate>Thu, 22 Jan 2009 11:55:09 +0000</pubDate>
		<dc:creator>Loïc</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[bande passante]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.loicg.net/?p=511</guid>
		<description><![CDATA[Ah les jolis sites, avec leurs feuilles de styles, leurs animations en Javascript et leurs morceaux d&#8217;AJAX dedans ! C&#8217;est joli, c&#8217;est très &#8220;2.0 et cie&#8221;, mais ça fait encore plus de lignes de code, encore plus de fichiers et donc encore plus de bande passante. Les sites s&#8217;allourdissent (sans parler des pubs, du flash, [...]]]></description>
			<content:encoded><![CDATA[<p>Ah les jolis sites, avec leurs feuilles de styles, leurs animations en Javascript et leurs morceaux d&#8217;AJAX dedans !<br />
C&#8217;est joli, c&#8217;est très &#8220;2.0 et cie&#8221;, mais ça fait encore plus de lignes de code, encore plus de fichiers et donc encore plus de bande passante.</p>
<p style="text-align: center;"><img class="size-medium wp-image-512 aligncenter" title="balance" src="http://blog.loicg.net/wp-content/uploads/2009/01/balance-279x300.jpg" alt="balance" width="195" height="210" /></p>
<p style="text-align: left;">Les sites s&#8217;allourdissent (sans parler des pubs, du flash, etc &#8230;). Bref ! C&#8217;est la crise, faut alléger tout ça ! (oui, je sais que la crise n&#8217;a rien à voir, mais c&#8217;est dans l&#8217;ère du temps <img src='http://blog.loicg.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  ).</p>
<p>Je vais parler aujourd&#8217;hui d&#8217;un petit bout de php qui ne fera de mal à personne : <a title="Minify a javascript css compressor" href="http://code.google.com/p/minify/" target="_blank">Minify</a>.<span id="more-511"></span></p>
<p>Minify est un script codé en php5 qui permet de réduire et de réunir efficacement les fichiers CSS et Javascript.<br />
Cette application supprime tous les caractères inutiles à l&#8217;interprétation du code par les navigateurs, à savoir les espaces et les commentaires.<br />
De plus, elle concatène ces scripts entre eux, ce qui permet de réduire le nombre de requêtes effectuées par le navigateur de vos visiteurs (ce qui implique un temps de chargement ainsi qu&#8217;une charge en bande passantes réduits).<br />
Autre atout, les fichiers crées sont envoyés avec un encodage HTTP (gzip/deflate), ce qui signifie qu&#8217;au moment de l&#8217;envoi au navigateur, ils vont être (g)zippés (compressés).</p>
<p>Au niveau de l&#8217;installation, c&#8217;est assez simple puisqu&#8217;un assistant de création d&#8217;URL est fourni avec l&#8217;outil pour permettre une integration plus aisée à vos créations existantes ou futures. Le fichier <a title="Minify, readme file" href="http://code.google.com/p/minify/source/browse/tags/release_2.1.1/README.txt" target="_blank">readme</a> explique tout ça bien mieux que moi ^^</p>
<p>Cette petite application est simple, mais diablement efficace. De plus, elle est gratuite et sous <a title="License BSD" href="http://www.opensource.org/licenses/bsd-license.php" target="_blank">licence BSD</a> (une des nombreuses licences OpenSource).</p>
<p>Via : <a title="Minify a javascript css compressor" href="http://www.webappers.com/2009/01/22/minify-combine-compress-css-or-javascript-files/" target="_blank">WebAppers</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.loicg.net/webdev/minify-reduisez-et-reunissez-vos-fichiers-css-et-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Feuilles de styles (CSS) : mode emploi</title>
		<link>http://blog.loicg.net/webdev/feuilles-de-styles-css-mode-emploi/</link>
		<comments>http://blog.loicg.net/webdev/feuilles-de-styles-css-mode-emploi/#comments</comments>
		<pubDate>Tue, 04 Dec 2007 18:44:21 +0000</pubDate>
		<dc:creator>Loïc</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[WebDev]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[tuto]]></category>

		<guid isPermaLink="false">http://blog.loicg.net/webdev/feuilles-de-styles-css-mode-emploi/</guid>
		<description><![CDATA[Au vu des besoins de mon cousin, j&#8217;ai décidé d&#8217;écrire quelques tutos concernant les technologies web (php, html, css, javascript pour ne citer qu&#8217;eux). Aujourd&#8217;hui, je vais me lancer dans un explicatif concernant les feuilles de styles (Cascading Style Sheet en anglais). Je vous invite à en découvrir plus dans la suite&#8230; 1/ Les forces [...]]]></description>
			<content:encoded><![CDATA[<p>Au vu des besoins de mon cousin, j&#8217;ai décidé d&#8217;écrire quelques tutos concernant les technologies web (php, html, css, javascript pour ne citer qu&#8217;eux).<br />
 Aujourd&#8217;hui, je vais me lancer dans un explicatif concernant les feuilles de styles (Cascading Style Sheet en anglais).</p>
<p>Je vous invite à en découvrir plus dans la suite&#8230;<br />
 <span id="more-48"></span><br />
 <strong><span style="font-size: 14pt; text-decoration: underline;">1/ Les forces en présence :<br />
 </span></strong><br />
 Les feuilles de styles sont un moyen efficace d&#8217;habiller toutes ces pages web de manière homogène, de créer facilement des thèmes et d&#8217;alléger le code HTML.<br />
 Gros avantage de ces feuilles de style : Vous définissez une seule fois les propriétés (style) d&#8217;une balise HTML pour les voir s&#8217;appliquer sur toutes les occurrences de cette même balise.</p>
<p>Par exemple, sans CSS, pour afficher tout les liens hypertexte en couleur rouge, on écrit :<br />
 <span style="color: blue;">&lt;a href=&#8221;index.html&#8221; style=&#8221;color: #ff0000&#8243;&gt;Home&lt;/a&gt;</span><br />
 et ce, pour chaque lien présent sur la page.</p>
<p>Avec du CSS, on écrit toujours la syntaxe classique du lien hypertexte soit :<br />
 <span style="color: blue;">&lt;a href=&#8221;index.html&#8221;&gt;Home&lt;/a&gt;</span><br />
 dans le fichier HTML. Puis, on écrit dans le fichier CSS :<br />
 <span style="color: green;">a{ color:#FF0000 }</span><br />
 Ainsi, on écrit le style une seule fois.</p>
<p>&#8220;C&#8217;est bien joli, je vois le principe, mais concrètement, ça ne me dérange pas de faire des copier-coller pour écrire mes liens&#8230;&#8221;<br />
 L&#8217;intérêt se trouve dans la non-répétition du style. Imaginons maintenant que votre site présente une vingtaine de liens, vous écrivez ceux-ci en utilisant la syntaxe habituelle :<span style="color: blue;"> &lt;a href=&#8221;"&gt;&lt;/a&gt;</span> et tous vos liens arboreront une belle couleur rouge.</p>
<p><strong><span style="font-size: 14pt; text-decoration: underline;">2/ Mise en place :<br />
 </span></strong>La feuille de style (CSS) est un fichier portant l&#8217;extension .css (on l&#8217;aurait deviné &#8230;)<br />
 Elle doit être désignée par la page HTML via un &#8220;link&#8221; placé entre les balises <span style="color: blue;">&lt;head&gt;</span> et <span style="color: blue;">&lt;/head&gt;</span> dont voici la syntaxe :<br />
 <span style="color: blue;">&lt;link rel=&#8221;stylesheet&#8221; type=&#8221;text/css&#8221; href=monStyle.css&#8221; media=&#8221;all&#8221; /&gt;<span style="color: black;"><br />
 rel=&#8221;stylesheet&#8221; nous indique que l&#8217;on charge une feuille de style.<br />
 type=&#8221;text/css&#8221; signifie qu&#8217;il s&#8217;agit d&#8217;un contenu en texte, et que c&#8217;est du css<br />
 href=&#8221;monStyle.css&#8221; est l&#8217;url du fichier<br />
 media=&#8221;all&#8221; indique que cette feuille de style sera utilisé pour tout type d&#8217;affichage (écran, imprimante, projecteur, etc &#8230;)</span></span></p>
<p>Maintenant, vous allez pouvoir créer votre page HTML ainsi que le fichier de style.</p>
<p><span style="text-decoration: underline;"><strong><span style="font-size: 14pt">3/ Impose ton style !</span></strong></span><br />
 Nous allons maintenant passer à du concret. Dans un premier temps, créons 2 fichiers :<br />
 Le premier sera notre fichier HTML, appelons-le index.html<br />
 Le second sera donc la feuille de style, appelons-la style.css</p>
<p>Ouvrons le fichier HTML, et écrivons une base classique :<br />
 <span style="color: blue;">&lt;html&gt;<br />
 &lt;head&gt;<br />
 &lt;title&gt;Ma page avec du CSS dedans&lt;/title&gt;<br />
 &lt;link rel=&#8221;stylesheet&#8221; type=&#8221;text/css&#8221; href=&#8221;style.css&#8221; media=&#8221;all&#8221; /&gt;<br />
 &lt;/head&gt;<br />
 &lt;body&gt;<br />
 &lt;h1&gt;Je suis un titre de type H1&lt;/h1&gt;<br />
 &lt;ul&gt;<br />
 &lt;li&gt;Les listes en gras, c&#8217;est très sympa !&lt;/li&gt;<br />
 &lt;li&gt;surtout avec un texte aussi inspiré&lt;/li&gt;<br />
 &lt;/ul&gt;<br />
 &lt;a href=&#8221;./&#8221;&gt;Cliquez-moi dessus !!!&lt;/a&gt;<br />
 &lt;br /&gt;<br />
 &lt;a href=&#8221;./&#8221;&gt;Non, cliquez sur moi !&lt;/a&gt;<br />
 &lt;/body&gt;<br />
 &lt;/html</span>&gt;<br />
 Je pense que ce sera suffisant pour l&#8217;exemple.</p>
<p>Maintenant, passons au fichier CSS :<br />
 <span style="color: red;">h1{color:#00FF00}<br />
 li{<br />
 font-weight:bold;<br />
 background-color:#00FF00;<br />
 color:#FF0000;<br />
 }<br />
 a­{text-decoration:blink}<span style="color: black;"><br />
 Voilà, pour le style.<br />
 Maintenant, afficher votre page dans le navigateur et admirez le résultat.</span></span></p>
<p>Je vous laisse donc sur cet exemple, et vous promet de revenir très rapidement pour la suite.</p>
<p><small><a rel="tag" href="http://technorati.com/tag/tuto"></a></small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.loicg.net/webdev/feuilles-de-styles-css-mode-emploi/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk (enhanced) (user agent is rejected)

Served from: blog.loicg.net @ 2010-09-09 11:50:00 -->