<?xml version="1.0" encoding="iso-8859-1" ?>
<rdf:RDF 
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
xmlns="http://purl.org/rss/1.0/"  
xmlns:dc="http://purl.org/dc/elements/1.1/">
  
  <channel rdf:about="http://www.mammouthland.net/">
  	<title>Bienvenue à Mammouthland !</title>
	<link>http://www.mammouthland.net/</link>
	<description>CSS débutants</description>
	<dc:language>fr</dc:language>

<!-- "Table des matières" RDF -->
	<items>
 		<rdf:Seq>
		<rdf:li rdf:resource="http://www.mammouthland.net/weblog/2008/10_02_08.php#caption" />
		<rdf:li rdf:resource="http://www.mammouthland.net/weblog/2008/30_01_08.php#wasp" />
		<rdf:li rdf:resource="http://www.mammouthland.net/weblog/2008/30_01_08.php#DU-accessibilite" />
		<rdf:li rdf:resource="http://www.mammouthland.net/cours/css/tableaux_traits_fins.php" />
		<rdf:li rdf:resource="http://www.mammouthland.net/parisweb2007/" />
		<rdf:li rdf:resource="http://www.mammouthland.net/weblog/2007/27_10_07.php#maj_CSS" />
		<rdf:li rdf:resource="http://www.mammouthland.net/weblog/2007/15_09_07.php" />	
		<rdf:li rdf:resource="http://www.mammouthland.net/weblog/2007/28_02_07.php#boutons" />
 		</rdf:Seq>
	</items>
   </channel>
    <!-- item caption table-->
    <item rdf:about="http://www.mammouthland.net/weblog/2008/10_02_08.php#caption">
      <title>Comportement de caption et de table</title>
      <link>http://www.mammouthland.net/weblog/2008/10_02_08.php#caption</link>
	  <dc:date>2008-02-10T22:30:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<p>La balise <code>&lt;caption&gt;</code> sert à indiquer une légende à un tableau.<br />
Elle doit être placée juste après la balise ouvrante <code>&lt;table&gt;</code> et doit être unique.</p>
<p>Comme l'indique ce schéma des spécifications CSS 2.1, les marges du <code>caption</code> et de la <code>table</code> sont indépendantes.</p>
<p style="text-align:center"><img src="http://www.mammouthland.net/images/top-caption.png" width="533" height="483" alt="illustration du comportement de caption (w3c)" /><br />image : <a href="http://www.w3.org/TR/CSS21/tables.html#model" title="spécification CSS 2.1 du w3c" hreflang="en">http://www.w3.org/TR/CSS21/tables.html#model</a></p>
<p>Par défaut, la légende est placée au dessus (<code>top</code>) du tableau. Mais on peut la placer aussi en dessous (<code>bottom</code>).</p>
<p>Là où il peut y avoir confusion, c'est que les normes <a href="http://www.w3.org/TR/REC-CSS2/tables.html#q6">CSS2</a> indiquaient que <code>caption</code> pouvait prendre les attributs <code>top&nbsp;|&nbsp;bottom&nbsp;|&nbsp;left&nbsp;|&nbsp;right</code>. En fait, les alignements <code>left&nbsp;|&nbsp;right</code> ne semblent avoir été implémentés que par Firefox.<br />
En effet, ces deux positionnements posent de gros problèmes d'implémentation dans les navigateurs, elles n'apparaissent donc plus dans les spécifications des <a href="http://www.w3.org/TR/CSS21/tables.html#caption-position">CSS 2.1</a> (merci <a href="http://glazman.org/weblog/" title="Daniel Glazman, membre de working groups du w3C">Daniel</a> pour l'explication ;-) )</p>

<h5>Code (x)html d'un tableau</h5>
<pre>
&lt;table border="1" summary="Notes attribuée pour les critères de ponctualité, de possession du matériel et la
 motivation d'élèves de la classe de 3ème à découverte professionnelle 6 heures"&gt;
&lt;caption&gt;&lt;span&gt;Tab1.&lt;/span&gt; Evaluation du comportement d'élèves de 3DP6&lt;/caption&gt;
 &lt;tr&gt;
  &lt;th&gt;Nom&lt;/th&gt;
  &lt;th&gt;Ponctualité et assiduité&lt;/th&gt;
  &lt;th&gt;Possession du matériel&lt;/th&gt;
  &lt;th&gt;Motivation et participation&lt;/th&gt;
  &lt;th&gt;Moyenne&lt;/th&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;th&gt;Sophie Delacnil&lt;/th&gt;
  &lt;td&gt;18/20&lt;/td&gt;
  &lt;td&gt;20/20&lt;/td&gt;
  &lt;td&gt;16/20&lt;/td&gt;
  &lt;td&gt;18/20&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;th&gt;Stéphane Lasticot&lt;/th&gt;
  &lt;td&gt;16/20&lt;/td&gt;
  &lt;td&gt;8/20&lt;/td&gt;
  &lt;td&gt;0/20&lt;/td&gt;
  &lt;td&gt;8/20&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;th&gt;Anne-François de Montrou&lt;/th&gt;
  &lt;td&gt;5/20&lt;/td&gt;
  &lt;td&gt;15/20&lt;/td&gt;
  &lt;td&gt;7/20&lt;/td&gt;
  &lt;td&gt;9/20&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;th&gt;Philippe Colation&lt;/th&gt;
  &lt;td&gt;16/20&lt;/td&gt;
  &lt;td&gt;6/20&lt;/td&gt;
  &lt;td&gt;14/20&lt;/td&gt;
  &lt;td&gt;12/20&lt;/td&gt;
 &lt;/tr&gt;
&lt;/table&gt;
</pre>
<p>Par défaut, l'apparence de ce tableau sera le suivant (le code CSS de ce tableau est indiqué sur <a href="http://www.mammouthland.net/cours/css/caption-side.html#css-base">la page d'aperçu</a>)&nbsp;:</p>
<p style="text-align:center"><img src="http://www.mammouthland.net/cours/css/capture-tab1.png" width="603" height="288" alt="positionnement caption par défaut : en haut texte centré" /></p>
<p class="voir"><a href="http://www.mammouthland.net/cours/css/caption-side.html#tableau1">Voir l'exemple</a></p>

<h4>Légende en bas et tableau centrés sur la page</h4>
<p>Pas la peine d'espérer avec MSIE (même 7), <code>caption-side</code> n'est pas implémenté du tout.<br />
Pour centrer le tableau et la légende, on prendra soin de rajouter un <code>margin:auto</code> à <code>caption</code> pour Firefox ou autre produit mozilla. Sinon, pour indiquer que la légende doit se situer en bas de tableau, c'est tout simplement <code>caption-side:bottom</code></p>
<h5>Code CSS</h5>
<p>(A rajouter au code initial)</p>
<pre>
table, caption {
margin:auto;
}
caption {
caption-side:bottom
}
</pre>
<h5>Résultat attendu</h5>
<p style="text-align:center"><img src="http://www.mammouthland.net/cours/css/capture-tab2.png" border="0" width="607" height="285" alt="position basse et centrée de la légende" /></p>
<p class="voir"><a href="http://www.mammouthland.net/cours/css/caption-side.html#tab-centre">Voir l'exemple</a></p>
<h4>Légende à gauche</h4>
<p>On peut tout de même s'interesser de plus près au comportement de Firefox.<br />
Le code CSS2 suivant permet donc de placer la légende en haut à gauche du tableau. Les autres navigateurs ne comprenant pas l'attribut <code>left</code> ou <code>right</code>, seul l'alignement du texte (ici à droite), sera interprété.</p>
<h5>Code CSS</h5>
<pre>
table {
margin:auto;
}
caption {
caption-side:left;
text-align:right;
}
</pre>
<h5>Résultat attendu</h5>
<p style="text-align:center"><img src="http://www.mammouthland.net/cours/css/capture-tab3.png" width="429" height="226" alt="légende située en haut à gauche du tableau" /></p>
<p class="voir"><a href="http://www.mammouthland.net/cours/css/caption-side.html#cap-gauche">Voir l'exemple</a></p>
<h4>Légende en bas à droite du tableau</h4>
<p>Pour obtenir un positionnnement à droite et en bas, on utilisera l'attribut <code>vertical-align:bottom</code></p>
<h5>Code CSS</h5>
<pre>
table {
margin:auto;
}
caption {
caption-side:right;
vertical-align:bottom;
text-align:left;
}
</pre>
<h5>Résultat attendu</h5>
<p style="text-align:center"><img src="http://www.mammouthland.net/cours/css/capture-tab4.png" width="306" height="267" alt="légende située à droite en bas du tableau" /></p>
<p class="voir"><a href="http://www.mammouthland.net/cours/css/caption-side.html#cap-droit">Voir l'exemple</a></p>

<h4>Remarques sur l'accessibilité</h4>
<ul>
<li>Indiquer une légende à un tableau fait partie des "bonnes pratiques" recommandées en matière d'accessibilité. Cela dit, pour être parfaitement accessible, un tableau devra aussi comporter l'attribut <code>summary</code> qui doit contenir une explication détaillée du contenu du tableau.</li>
<li>On utilise les balises <code>&lt;th&gt;</code> pour les cellules d'en-tête et non pour centrer le texte ! (qui est la mise en forme par défaut). Le reste des données étant balisées par <code>&lt;td&gt;</code></li>
<li>Pour être plus que parfait, on peut aussi renseigner le contenu des cellules d'en-têtes par l'attribut <code>abbr</code>.</li>
</ul>

]]>
	</content:encoded>
	</item> 	
    <!-- item WaSP café, accessibilité-->
    <item rdf:about="http://www.mammouthland.net/weblog/2008/30_01_08.php#wasp">
      <title>WaSP café, accessibilité</title>
      <link>http://www.mammouthland.net/weblog/2008/30_01_08.php#wasp</link>
	  <dc:date>2008-01-30T23:00:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<p>Lundi soir dernier se tenait, à Paris, le deuxième <a href="http://waspcafefrance.webstandards.org/">WaSP</a> café. Profitant d'une petite accalmie d'emploi du temps, je m'y suis rendue avec entrain (et en voiture s'iou plait, Porte Maillot et l'Étoile, même plus peur...)</p>
<p>Outre le plaisir d'y retrouver une bonne partie des acteurs de <a href="http://www.paris-web.fr/" title="Design, qualité et accessibilité">ParisWeb</a>, j'y ai suivi avec intérêt l'atelier animé par <a href="http://www.blog-and-blues.org/" title="Blog-and-Blues">Laurent</a> et <a href="http://www.fairytells.net/" title="Fairytells">Aurélien</a> sur l'accessibilité.<br />Cela m'a permis d'éclaircir quelque peu les idées. J'avais, en effet, un peu de mal à faire le tri entre les normes <a href="http://www.w3.org/TR/WAI-WEBCONTENT/" title="Web Content Accessibility Guidelines">WCAG</a>, <a href="http://www.accessiweb.org/">accessiweb</a> et le <abbr title="Référentiel général d'Accessibilité pour les Administrations">RGAA</abbr> (le RG2A pour les intimes).</p>
<h4><abbr title="Web Content Accessibility Guidelines">WCAG</abbr></h4>
<ul>
<li>Les WCAG 1.0 ont été publiées par le W3C en mai 1999, elles ont donc une dimension mondiale.</li>
<li>Elles définissent trois niveaux d'accessibilité (niveau A, niveau AA, niveau AAA)</li>
</ul>
<h4>Accessiweb</h4>
<ul>
<li>Accessiweb est la propriété de l'association française "<a href="http://www.braillenet.org/" title="porte sur le Web pour les personnes handicapées visuelles">BrailleNet</a>".</li>
<li>Accessiweb répertorie aussi trois niveaux d'accessibilité, <a href="http://www.accessiweb.org/fr/Label_Accessibilite/criteres_accessiweb/correspondance_accessiweb_wcag10/" title="comparatif WCAG/accessiweb">très largement inspirés des WCAG</a> (niveau bronze, niveau argent, et niveau or)</li>
</ul>
<h4>RGAA</h4>
<p>Le RGAA a été redigé sous le contrôle de la <abbr title="Direction Générale de la Modernisation de l'Etat">DGME</abbr>. <a href="http://www.blog-and-blues.org/weblog/2007/05/14/481-le-referentiel-general-d-accessibilite-des-administrations-rgaa" title="RGAA, quelques points saillants">Laurent</a> et <a href="http://www.fairytells.net/index.php/2007/05/09/65-le-referentiel-general-d-accessibilite-des-administrations-rgaa-pour-une-accessibilite-reelle-et-durable" title="RGAA, pour une accessibilité réelle et durable">Aurélien</a> sus-cités y ont d'ailleurs participé. Le RGAA pointe les 14 directives des WCAG pour respecter l'accessibilité. Ce sera le document de référence pour toute l'administration.</p> 
<p>Depuis la loi du 11 février 2005, les sites publics sont sensés être accessibles, au moins au niveau AA. Mais le décret de mise en application n'est pas encore sorti, il devrait l'être incessamment sous peu... (après les élections me dit-on dans l'oreillette).</p>
]]>
	</content:encoded>
	</item> 	
   <!-- item DU-accessibilité -->
    <item rdf:about="http://www.mammouthland.net/weblog/2008/30_01_08.php#DU-accessibilite">
      <title>D.U accessibilité</title>
      <link>http://www.mammouthland.net/weblog/2008/30_01_08.php#DU-accessibilite</link>
	  <dc:date>2008-01-30T23:00:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<p>Il y a donc du boulot, et rien de tel qu'une bonne formation pour mettre tout cela d'équerre.</p>
<p>Et bien cette formation, elle existe&nbsp;! Et, paradoxe, les candidats ne se pressent pas au portillon...Il y a en effet trop plein de places pour la session de courant février.<br />Elle se prépare à Jussieu (<a href="http://www.upmc.fr/FR/info/13020301" title="formation continue de l'upmc">Université Pierre et Marie Curie</a>), en 106 heures, et est sanctionnée par un diplôme universitaire de niveau bac+3.</p>
<p>Mais qu'est-ce que je fais dans mon siège au lieu de m'inscrire, moi&nbsp;?...(hé, hé, en fait, j'attends le dossier d'inscription).</p>
<ul>
<li><a href="http://www2.upmc.fr/fc/Info/DU/DU_AccessiWEB_2007.pdf">Détail du contenu du D.U accessibilité du WEB</a></li>
</ul>
]]>
	</content:encoded>
	</item> 	
   <!-- item maj tuto tableaux -->
    <item rdf:about="http://www.mammouthland.net/cours/css/tableaux_traits_fins.php">
      <title>Tableaux à bordures fines</title>
      <link>http://www.mammouthland.net/cours/css/tableaux_traits_fins.php</link>
	  <dc:date>2007-12-31T18:40:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<h2>Tableaux à bordures fines avec les <acronym title="Cascading Style Sheet">CSS</acronym></h2>
	<div class="objet">
	<p>Fonctionne avec :</p>
	<ul>
		<li>FireFox</li>
		<li>IE 5.x et +</li>
		<li>NS 6/7</li>
		<li>Mozilla 1.x</li>
		<li>Opéra 5.x et +</li>
		<li>Safari</li>
	</ul>
	<p>Propriétés utilisées:</p>
	<ul>
		<li>background-color</li>
		<li>border-color ; border-style ; border-width</li>
		<li>float</li>
		<li>height</li>
		<li>left</li>
		<li>margin</li>
		<li>padding</li>
		<li>position</li>
		<li>top</li>
		<li>width</li>
	</ul>
	</div>

<p>Comment faire un tableau à bordures finess&nbsp;!? Sans les feuilles de style, impossible. Rien à faire à part des grosses bordures saillantes et peu élégantes. Mais avec une petite dose de CSS, c'est fait en un rien de temps.</p>

<h3>Premier exemple :</h3>
<p>Un habillage très rapide de la table (<code>table</code>) et des cellules (<code>td</code>) va déjà donner un aperçu de ce que l'on peut faire.</p>
<h4>Code <acronym title="Cascading Style Sheet">CSS</acronym> :</h4>
<p>Indiquez dans votre <a href="css_de_base.php" class="n">feuille de style externe</a> le code suivant :</p>
<pre>
table {
border-width:1px; 
border-style:solid; 
border-color:black;
width:50%;
}
td { 
border-width:1px;
border-style:solid; 
border-color:red;
width:50%;
}
</pre>
<p>Vous noterez que, grâce à l'attribut <code>width</code>, les tailles du tableau et des cellules sont aussi définies. Cela va permettre d'épurer le code (x)html qui suit.</p>
<h4>Code (x)html :</h4>
<p>Dans votre page html, indiquez ceci :</p>

<pre>
&lt;table&gt;
&nbsp;&nbsp;&lt;tr&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;Oh qu'il est beau !&lt;/td&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;Ce jouli tableau à bordures fines !!&lt;/td&gt;
&nbsp;&nbsp;&lt;/tr&gt;
&lt;/table&gt;
</pre>
<p>Cela doit vous donner :</p>
<table>
    <tr>
      <td>Oh qu'il est beau !</td>
      <td>Ce jouli tableau à bordures fines !!</td>
    </tr>
</table>
<p> Pour fusionner les bordures de tour de tableau et de cellules, il suffira de rajouter, dans les styles de <code>table</code>, l'élement suivant : <code>border-collapse:collapse</code>, ce qui donnera l'effet suivant :</p>
<table style="border-collapse:collapse">
    <tr>
      <td>Oh qu'il est beau !</td>
      <td>Ce jouli tableau à bordures fusionnées...</td>
    </tr>
</table>
<h4 class="astuce">Astuce</h4>
<p>Pour centrer verticalement le texte dans la cellule, rajouter dans le code CSS du <code>td</code>&nbsp;:</p>
<pre>
vertical-align:middle;
</pre>

<p class="haut"><a href="#haut">Haut de page</a></p>
<h3>Deuxième exemple</h3>

<p>J'en vois d'ici qui disent : "oui, mais je n'en veut pas du trait noir du tour !! ... et puis d'abord, je veux ma cellule de gauche bordée de noir et avec un fond gris, et celle de droite bordée de bleu."</p>

<p>Pas de problèmes !</p>

<table class="nonen">
    <tr>
      <td class="grise">Oh la belle cellule grise !</td>
      <td class="blue">Oh la belle bleue !!</td>
    </tr>
</table>

<h4>Code CSS :</h4>

<pre>
.grise {
border-width:1px; 
border-style:solid; 
border-color:black; 
background-color:silver;
}

.blue {
border-width:1px; 
border-style:solid; 
border-color:blue;
}

.none {
border-style:none;
}  

</pre>
<h4>Code (x)html :</h4>
<p>C'est avec l'attribut "class" l'appel aux styles va se faire :</p>
<pre>
&lt;table class="none"&gt;
&nbsp;&nbsp;&lt;tr&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td class="grise"&gt;Oh la belle cellule grise !&lt;/td&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td class="blue"&gt;Oh la belle bleue !!&lt;/td&gt;
&nbsp;&nbsp;&lt;/tr&gt;
&lt;/table&gt;
</pre>

<p>Vous remarquez donc que les styles "<code>.grise</code>" et "<code>.blue</code>" sont appelés dans les cellules du tableau par la syntaxe <code>class="grise"</code> et <code>class="blue"</code>. Avec ce système, les combinaisons sont infinies...</p>

<p>Le style des bordures peut-être "<code>solid</code>" comme dans cet exemple, mais aussi en relief grâce à "<code>outset</code>" ou "<code>inset</code>", en pointillé "<code>dotted</code>"...<br />
On peut aussi avoir les 4 côtés différents puisque chaque bord peut être détaillé : <code>border-style-left</code>, <code>border-color-right</code>, <code>border-width-top</code> etc.<br />
Possibilités infinies je vous dis !</p> 

<h4 class="astuce">Astuce de codage</h4>
<p>Le code CSS des bordures peut être allégé en indiquant dans l'ordre la taille, le style et la couleur. Cela donnerait donc pour les exemples ci-dessus&nbsp;:</p>
<pre>
border : 1px solid black;
</pre>
<h3>Accessibilité</h3>
<p>Les tableaux servent à présenter les données tabulaires. Ca paraît évident comme ça, mais cela mérite pourtant d'être rappelé car de nombreux sites s'en servent encore pour la mise en page alors que ce n'est pas nécessaire, voire contre productif.</p>
<p>Afin que <a href="http://openweb.eu.org/articles/intro_accessibilite/" title="introduction à l'accessibilité - OpenWeb">l'accessibilité</a> soit meilleure, il existe quelques règles à mettre en place. En voici trois importantes et faciles&nbsp;:</p>
<ol>
<li>Indiquer le <code>summary</code> à l'intérieur de la balise <code>table</code>, qui fait office de légende pour expliquer le contenu du tableau.</li>
<li>Utiliser la balise <code>caption</code> pour indiquer un titre au tableau</li>
<li>Utiliser les balises <code>th</code> pour les cellules d'en-têtes. A noter que par défaut le contenu des balises <code>th</code> sont centrées et en gras.</li>
</ol>
<p>Un petit exemple vite fait&nbsp;:</p>
<h4>Code (x)html</h4>
<pre>
&lt;table summary="répartition, en pourcentage, des 5 navigateurs les plus utilisés pour visiter CSS débutants"&gt;
 &lt;caption&gt;Top 5 des navigateurs utilisés sur CSS débutants en décembre 2007&lt;caption&gt;
 &lt;tr&gt;
  &lt;th&gt;Firefox&lt;/th&gt;
  &lt;th&gt;Explorer&lt;/th&gt;
  &lt;th&gt;Mozilla&lt;/th&gt;
  &lt;th&gt;Safari&lt;/th&gt;
  &lt;th&gt;Opéra&lt;/th&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td&gt;49,6 %&lt;/td&gt;
  &lt;td&gt;39,4 %&lt;/td&gt;
  &lt;td&gt;5,0 %&lt;/td&gt;
  &lt;td&gt;2,4 %&lt;/td&gt;
  &lt;td&gt;0,9 %&lt;/td&gt;
 &lt;/tr&gt;
&lt;/table&gt;
</pre>
<h4>Code CSS</h4>
<pre>
table {
border-collapse:collapse;
width:90%;
}
th, td {
border:1px solid black;
width:20%;
}
td {
text-align:center;
}
caption {
font-weight:bold
}
</pre>
<h4>Résultat :</h4>
<div class="access">
<table summary="répartition, en pourcentage, des 5 navigateurs les plus utilisés pour visiter CSS débutants">
<caption>Top 5 des navigateurs utilisés sur CSS débutants en décembre 2007</caption>
<tr>
	<th>Firefox</th>
	<th>Explorer</th>
	<th>Mozilla</th>
	<th>Safari</th>
	<th>Opéra</th>
</tr>
<tr>
	<td>49,6 %</td>
	<td>39,4 %</td>
	<td>5,0 %</td>
	<td>2,4 %</td>
	<td>0,9 %</td>
</tr>
</table>
</div>	

<p>Pour la mise en forme de tableaux plus complexes et pour plus de critères d'accessibilité, consulter ces différentes pages&nbsp;:</p>
<ul>
<li><a href="http://openweb.eu.org/articles/tableaux_css/" title="mise en forme plus fouillée de tableaux">Tableaux CSS - OpenWeb</a></li>
<li><a href="http://www.accessiweb.org/fr/Label_Accessibilite/criteres_accessiweb/92_accessiweb_lineaire/#tableaux" title="Critères d'accessibilité pour les tableaux">Critères accessiweb</a></li>
<li><a href="http://espace-accessibilite.com/article.php3?id_article=26" title="pratique !">Générateur de tableaux accessibles</a></li>
</ul>

<p class="haut"><a href="#haut">Haut de page</a></p>
<h3>Troisième exemple : le tableau sans tableau !</h3>
<p class="astuce">Warning : En attendant <acronym title="Microsoft Internet Explorer">MSIE</acronym> 8, cette option ne fonctionne pas encore Internet Explorer</p>

<p>Grâce à la propriété <code>display</code> et l'attribut <code>table-cell</code>, on peut aussi simuler une présentation tabulaire sans faire de tableau.</p>
<p>Mettons que je veuille présenter le top 5 de mes navigateurs non pas sous forme de tableau mais sous forme de liste&nbsp;:</p>

<ul>
<li>Firefox : 49,6 %</li>
<li>Internet Explorer : 39,4 %</li>
<li>Mozilla : 5,0 %</li>
<li>Safari : 2,4 %</li>
<li>Opéra : 0,9 %</li>
</ul>

<p>Mais je voudrais que les pourcentages soient alignés verticalement...<br /> Pour cela, on peut encadrer les éléments que l'on veut aligner par la balise <code>span</code> et lui attribuer un <code>table-cell</code> ce qui va permettre de lui affecter une largeur fixe comme un élément de type "block", chose impossible par défaut.</p>
<p>Petit écueil néanmoins au niveau de l'alignement des images de puces&nbsp;: elles vont se trouver décalées par rapport au texte. Mais cela peut-être réglé par la méthode "Made in Sam" décrite dans le <a href="http://www.mammouthland.net/cours/css/puces_en_gifs.php">tutoriel sur les puces</a>.</p>
<h4>Code (x)html</h4>
<pre>
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;Firefox :&lt;/span&gt; &lt;span&gt;49,6 %&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;Internet Explorer :&lt;/span&gt; &lt;span&gt;39,4 %&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;Mozilla :&lt;/span&gt; &lt;span&gt;5,0 %&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;Safari :&lt;/span&gt; &lt;span&gt;2,4 %&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;Opéra :&lt;/span&gt; &lt;span&gt;0,9 %&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
</pre>
<h4>Code CSS</h4>
<pre>
li span { 
display:table-cell;
width:130px;
}
li { /*pour l'alignement des puces*/
list-style-image:none;
list-style-type:none;
background: url(pucegrise.gif) no-repeat 0% 50%;
padding-left:20px;
}
</pre> 
<h4>Résultat attendu :</h4>
<p style="text-align:center"><img src="table_cell1.png" width="222" height="106" alt="Capture d'écran display:table-cell" /></p>
<p>Pardon&nbsp;? Vous dites&nbsp;? <q>Oui mais les nombres, ça doit s'aligner sur la droite&nbsp;?</q>. Mais vous êtes pire que moi dans le souci du détail&nbsp;!!</p>
<p>Ok, vos désirs sont des ordres. On va utiliser les "<a href="http://www.yoyodesign.org/doc/w3c/css2/selector.html#adjacent-selectors" title="recommandation du W3C" hreflang="fr">combinateurs d'enfants adjacents</a>" (E&nbsp;+&nbsp;F) pour arranger cela et qui va permettre de ne styler que le second <code>span</code> de chaque item. On va donc en fixer la largeur à 50 pixels et aligner le texte sur la droite en rajoutant ceci au code CSS&nbsp;:</p>
<pre>
li span + span {
width:50px;
text-align:right;
}
</pre>
<h4>Résultat attendu :</h4>
<p style="text-align:center"><img src="table_cell2.png" width="223" height="108" alt="Capture d'écran display:table-cell avec alignement des nombres sur la droite" /></p>
]]>
	</content:encoded>
	</item> 	
   <!-- item atelier CSS paris web 2007 -->
   <item rdf:about="http://www.mammouthland.net/parisweb2007/">
      <title>Paris Web 2007 : Atelier CSS</title>
      <link>http://www.mammouthland.net/parisweb2007</link>
	  <dc:date>2007-11-22T17:45:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<h2 id="anims">Animateurs</h2>
<ul>
<li>Pascale Lambert-Charreteur (<a href="http://www.mammouthland.net/cours/css/" title="CSS débutant - Mammouthland">CSS débutants</a>)</li>
<li>Raphaël Goetter (<a href="http://www.alsacreations.com/" title="Communauté d'Alsacréations">Alsacréations</a>)</li>
</ul>
<p class="top"><a href="#">Haut</a></p>
<h2 id="diapos">Diaporama de présentation</h2>
<ul>
<li><a href="atelier-CSS-positionnement.odp" title="diaporama OOo 2.0">Version OpenOffice</a></li>
<li><a href="atelier-CSS-positionnement.pdf" title="diaporama version pdf">Version pdf</a></li>
</ul>
<p class="top"><a href="#">Haut</a></p>
<h2 id="exos">Exercices proposés</h2>
<p>A partir d'un fichier (x)html établi, le but est d'arriver, par étapes, à la mise en page du site d'Alsacréations à l'aide des feuilles de styles.</p>
<p style="font-weight:bold">Résultat attendu :</p>
<p style="text-align:center"><img src="alsa.png" width="577" height="452" alt="capture d'écran d'alsacréations" /></p>
<h3>Exercice 1 : réalisation du menu horizontal</h3>
<ul>
<li><a href="index1.html">fichier html</a></li>
<li><a href="style1.css">fichier CSS à compléter</a></li>
<li><a href="exo1.zip">Dossier complet</a></li>
</ul>
<h3>Exercice 2 : positionnement des blocs</h3>
<ul>
<li><a href="index2.html">fichier html</a></li>
<li><a href="style2.css">fichier CSS à compléter</a></li>
<li><a href="exo2.zip">Dossier complet</a></li>
</ul>
<h3>Exercice 3 : coins arrondis de la "Sidebar"</h3>
<ul>
<li><a href="index3.html">fichier html</a></li>
<li><a href="design/gris.png">image utilisée</a></li>
<li><a href="style3_bis.css">fichier CSS à compléter</a></li>
<li><a href="exo3.zip">Dossier complet</a></li>
</ul>
<h3>Exercice 4 : rollover du menu horizontal par la technique des "portes coulissantes"</h3>
<ul>
<li><a href="index4.html">fichier html</a></li>
<li><a href="design/menu.jpg">image utilisée</a></li>
<li><a href="style4.css">fichier CSS à compléter</a></li>
<li><a href="exo4.zip">Dossier complet</a></li>
</ul>
<p class="top"><a href="#">Haut</a></p>
<h2 id="soluce">Solutions</h2>
<ul>
<li><a href="indexfinal.html">fichier html</a></li>
<li><a href="style1good.css">style1.css</a></li>
<li><a href="style2good.css">style2.css</a></li>
<li><a href="style3good.css">style3.css</a></li>
<li><a href="style4good.css">style4.css</a></li>
<li><a href="final.zip">Dossier complet</a></li>
</ul>
<p class="top"><a href="#">Haut</a></p>
]]>
	</content:encoded>
	</item> 	
    <!-- item maj css-->
	<item rdf:about="http://www.mammouthland.net/weblog/2007/27_10_07.php#maj_CSS">
      <title>Mise à jour des tutos sur les CSS</title>
      <link>http://www.mammouthland.net/weblog/2007/27_10_07.php#maj_CSS</link>
	  <dc:date>2007-10-27T21:40:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<p>Profitant du déménagement de mammouthland.free.fr vers <a href="http://www.mammouthland.net/">www.mammouthland.net</a>, j'ai rajouté 3 tutoriels dans la partie "CSS Débutants" :</p>
<ul>
<li>Faire un <a href="http://www.mammouthland.net/cours/css/menu_horizontal_css.php">menu horizontal en CSS</a></li>
<li>Mettre <a href="http://www.mammouthland.net/cours/css/plusieurs_background_image.php">plusieurs images de fond</a> dans une même page</li>
<li>La <a href="http://www.mammouthland.net/cours/css/object_rasmol.php">balise <code>&lt;object&gt;</code> et les molécules Rasmol</a></li>
</ul>
<p>Bonne (re)lecture et pensez à mettre à jour vos liens !</p>
]]>
	</content:encoded>
	</item> 	
    <!-- item ParisWeb 2007-->
	<item rdf:about="http://www.mammouthland.net/weblog/2007/15_09_07.php">
      <title>ParisWeb 2007</title>
      <link>http://www.mammouthland.net/weblog/2007/15_09_07.php</link>
	  <dc:date>2007-09-15T19:20:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<p style="background-color:#696969; height:68px; width:250px; padding:10px;"><img src="http://www.mammouthland.net/images/PW2007-logo.png" width="250" height="68" alt="Logo ParisWeb 2007" /></p>
<p>Le compte à rebours a débuté : <a href="http://2007.paris-web.fr/">Paris Web 2007</a>, c'est dans 2 mois&nbsp;!</p>
<p>Pour la deuxième édition de ce cycle de conférences dédié à l'accessibilité, la qualité et le design du web, il y aura <a href="http://2007.paris-web.fr/Stephanie-Booth">des stars</a>, et <a href="http://2007.paris-web.fr/Daniel-Glazman">des stars</a> et encore <a href="http://2007.paris-web.fr/Dominique-Hazael-Massieux">des stars</a> du web. <br />
Petit regret tout de même (mais qui est très personnel) mon <a href="http://www.la-grange.net">Gourou</a> préféré ne sera pas là (mais au moins, je ne risquerai pas de me retrouver à la une de <strike>Paris Match</strike> <a href="http://embruns.net/logbook/2006/10/31.html">d'Embruns</a> :-p).</p>
<p>Et si vous voulez savoir ce que peut donner la rencontre d'un <a href="http://www.alsacreations.com/">kiwi d'Alsace</a> avec un mammouth Breton, il faudra venir assister à un atelier pratique sur les <acronym title="Cascading Style Sheet">CSS</acronym> qui se déroulera le <a href="http://2007.paris-web.fr/Samedi-17-novembre">samedi 17 novembre</a>.</p>
]]>
	</content:encoded>
	</item> 	
    <!-- item boutonnière-->
	<item rdf:about="http://www.mammouthland.net/weblog/2007/28_02_07.php#boutons">
      <title>Menu horizontal en CSS (style "boutonnière")</title>
      <link>http://www.mammouthland.net/weblog/2007/28_02_07.php#boutons</link>
	  <dc:date>2007-02-28T12:15:00+01:00</dc:date>
	<content:encoded>
<![CDATA[
<blockquote>
<p>Je souhaite réaliser un menu horizontal comprenant des boutons de même taille. Malgrès de nombreux essais,
je n'ai pas réussi à y parvenir. Existe-t-il une solution à ce problème&nbsp;?</p>
</blockquote>
<p>A l'inverse de la technique décrite <a href="http://openweb.eu.org/articles/bouton_css/#boutonniere">dans ce tutoriel</a>, on va donner l'aspect d'un paragraphe à une liste. Le dernier item de cette liste sera de longueur plus importante que les autres. Malgré cela chaque bouton doit avoir la même largeur.</p>
<h4>Source (x)html</h4>
<pre>
&lt;ul&gt;
&lt;li&gt;&lt;a href="#"&gt;Item 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;Item 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;Item plus long&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</pre>
<h4>Source CSS</h4>
<p>Le principe est donc de transformer cette liste à puces verticale en liste (sans puces) horizontale. Pour commencer, on va donc déclarer la liste (<code>ul</code>&nbsp;; <code>list-style-type:none</code>) sans puces et mettre mes marges extérieures (<code>margin</code>) et intérieures (<code>padding</code>) à zéro.</p>
<p>Chaque item (<code>li</code>) devra néanmoins être légèrement écarté de son voisin, on va donc déclarer une marge droite à 2 pixels (<code>margin-left:2px</code>).</p>
<p>Vient ensuite le comportement des liens de cette liste (<code>ul&nbsp;li&nbsp;a</code>). Le <code>display:block</code> va permettre de ne pas passer à la ligne à chaque item, et pour ne pas qu'ils s'empilent les uns sur les autres, on déclare les différents élément flottants à droite <code>float:left</code>. Mais comme MSIE ne fait rien comme tout le monde, cet attribut doit être aussi déclaré pour les items seuls.</p>
<p>Reste à déclarer l'aspect du bouton&nbsp;: sa taille (<code>width</code>)&nbsp;; sa couleur de fond (<code>background-color</code>)&nbsp;; la couleur du texte, son aspect, et son positionnement dans le bouton (<code>color</code>&nbsp;; <code>text-decoration</code>&nbsp;; <code>text-align</code>&nbsp;; <code>padding</code>)&nbsp;; l'aspect des bordures (<code>border-width</code>&nbsp;; <code>border-style</code>&nbsp;; <code>border-color</code>).</p>
<p>Et pour fignoler le tout, on définit l'aspect que prendra ce même bouton lors du survol de la souris (<code>ul&nbsp;li&nbsp;a:hover</code>).</p> 
<pre>
ul {
padding:0;
margin:0;
list-style-type:none;
}
li
{
margin-left:2px;
float:left; /*pour IE*/
}
ul li a
{
display:block;
float:left;   
width:100px;
background-color:#6495ED;
color:black;
text-decoration:none;
text-align:center;
padding:5px;
border-width:2px;
border-style:solid;
/*pour avoir un effet "outset" avec IE :*/
border-color:#DCDCDC #696969 #696969 #DCDCDC;
}
ul li a:hover
{
background-color:#D3D3D3;
border-color: #696969 #DCDCDC #DCDCDC #696969;
} 
</pre>
<h4>Résultat attendu</h4>
<p><img src="http://www.mammouthland.net/images/boutons.png" width="363" height="69" alt="boutonnière horizontale" /></p>
<p><a href="http://www.mammouthland.net/weblog/2007/boutonniere_horizontale.html">Tester le résultat</a></p>
]]>
	</content:encoded>
	</item> 	
</rdf:RDF>
