Bonjour,
Alors j'ai un petit probleme avec le tuto Style Switcher, j'ai tout fais correctement, mais il y a un hic, je n'ai aucune feuille de style Smiley decu
Voyez par vous meme ici: http://japanimes.mangas.free.fr/index.php

voici la disposition de mes dossiers dans la racine de mon site (http://japanimes.mangas.free.fr/):

+index.php
+images
-styles
__+styleswitcher.inc.php
__-onepiece
____+style.css
__-defaut
____+style.css

et voici le code de mon index.php:
<?php
header('Content-type: text/html; charset=iso-8859-1');
require_once 'styles/styleswitcher.inc.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >

		
   <head>
       <title>One Piece Generation</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	   <meta name="description" content="pour google" />
	   <meta name="revisit-after" content="8 days" />
	
<?php

echo '<link rel="stylesheet" type="text/css" media="screen" href="'.$css.'/style.css" />';

?>
   </head>
   <body>
       <div id="banniere">

</div>

<div id="conteneur">

<div id="boutons">
<table id="Tableau_01" width="786" height="48" border="0" cellpadding="0" cellspacing="0">
	<tr>
		<td class="bouton1">
			</td>
		<td class="bouton2">
			</td>
		<td class="bouton3">
			</td>
		<td class="bouton4">
			</td>
	</tr>
</table>
</div>
<div id="pub1"></div>

<div id="menu">

<ul id="styleswitcher">
		<li><a href="<?php echo $actuel; ?>?style=defaut">par défaut</a></li>
		<li><a href="<?php echo $actuel; ?>?style=onepiece">One Piece</a></li>
	</ul>

<? include("menu.php"); ?>


</div>

<div id="corps">
Nom de la série: One Piece
Auteur/Mangaka: Eiichirô Oda
Première apparition: Numéro 34 du Weekly Jump de 1997
Nombres de tomes:
Nombres d'épisodes:
Films: 6
<br/>
L'histoire:<br/>

Le Seigneur des pirates Gold Roger, avant de mourir a dit : "Mon trésor ? Si vous y tenez, vous n'avez qu'à le prendre ... Mais il vous faudra d'abord le chercher, car je l'ai caché quelque part dans ce vaste monde!". Sur ces mots, une vague de nouveaux pirates se lanca dans la fouille de ce fabuleux trésor aux quatres coins du monde.

Dans un petit village portuaire nommé Fushia Town vit Monkey D. Luffy, un jeune garçon qui, depuis le jour où il a fait la connaissance de Shanks Le Roux et de son équipage, rêve de devenir un pirate. Un jour Luffy mange un fruit du démon, ramené par Shanks lors d'un expédition, ce fruit à la faculté de rendre la personne qui le mange extensible à volonté mais la condamne à ne plus pouvoir nager. Ce n'est pas pour autant que le jeune garçon perd espoir de devenir pirate. Quelques années plutard, Luffy alors adolescence monte son propre équipage et prend la mer, il part à la recherche du fabuleux trésor laissé par Gold Roger: le One Piece. Celui qui trouvera ce mystérieux trésor deviendra alors, le "Seigneur des Pirates"... 
</div>


<div id="pub2">
</div>

</div>

</body>

</html>


le code de mon styleswitcher.inc.php:

<?php
function construire_url($dossier)
{
	return 'http://japanimes.mangas.free.fr/styles/' . htmlspecialchars($dossier) . '/style.css';
}

$dossiers = array(
	'defaut',
	'onepiece'
	
);

$actuel = htmlspecialchars($PHP_SELF);

if(in_array($_GET['style'], $dossiers, true))
{
	setcookie('style', $_GET['style'], time() + (365 * 24 * 3600));
	$url = construire_url($_GET['style']);
}

else if(in_array($_COOKIE['style'], $dossiers, true))
{
	$url = construire_url($_COOKIE['style']);
}

else
{
	$url = construire_url($dossiers[0]);
}
?>


et le code mes 2 feuilles de styles (elles sont similaires):

body
{
   width: 840px;
   margin: auto; /* Pour centrer notre page */
   margin-top: 0px; /* Pour éviter de coller avec le haut de la fenêtre du navigateur. Essayez d'enlever pour voir ! */
   margin-bottom: 0px;    /* Idem pour le bas du navigateur */
 	background-repeat: repeat;
    background-color: #8c8c8c;
}


#banniere
{
   width: 840px;
   height: 325px;
   background-repeat: no-repeat;
   margin-bottom: 0px;
      background-image:url("././images/header.jpg"); 
}

#conteneur {
 position: absolute;
 margin-top: 0px;
 width: 840px;
 background-image:url("././images/fond.jpg"); 
 border: 0px solid red;
 }
 
  #pub1
{

   width: 840px;
   height: 122px;

   background-color: #626262;
   background-image: url("././images/pub1.jpg");
   background-repeat: no-repeat;
   

}
 
  #menu 
 {
 float: left;
 margin-left:10px;
  width: 190px;

 border:0px solid green;
  font-family: Verdana, "Times New Roman", serif, "Trebuchet MS", Arial, "Arial Black", Times;
	  font-size: 11px;
 }
 
  #corps 
 {
 float: right;
 margin-right: 40px;
 width: 540px;
 border: 0px solid pink;
 padding-left: 20px;
   padding-right: 20px;
   padding-top: 12px;
   padding-bottom: 20px;
   
      font-family: Verdana, "Times New Roman", serif, "Trebuchet MS", Arial, "Arial Black", Times;
	  font-size: 11px;
   
   color: #e8e8e8;

 
 }
 
 #pub2
{

   width: 840px;
   height: 164px;
   background-image: url("././images/pub2.jpg");
   background-repeat: no-repeat;
   
   border: 0px solid black;
   
   clear:both;
}

#boutons
{
	background-position: center;
	 margin-left:25px;
}


td.bouton1 {
background-image:url("././images/bouton_01.jpg");
width:188px; 
height:48px; 
}

td.bouton2{
background-image:url("././images/bouton_02.jpg");
width:193px; 
height:48px; 
}

td.bouton3 {
background-image:url("././images/bouton_03.jpg");
width:180px; 
height:49px; 
}

td.bouton4 {
background-image:url("././images/bouton_04.jpg");
width:225px; 
height:49px; 
}


Voila je pense que j'ai donner suffisement d'infos, merci d'avance pour votre aide Smiley cligne
Modifié par Tenshi (07 Oct 2007 - 16:45)
Ah probleme résolu, petite erreur c'est tout.

Mon autre "problème" et que je veux mettre les différents design dans un menu déroulant au lieu qu'ils soient en liste. Mais je ne sais pas comment m'y prendre, voici mon site.

Merci d'avance pour votre aide :lol:


<?php
header('Content-type: text/html; charset=iso-8859-1');
require_once 'styles/styleswitcher.inc.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
 
                
   <head>
       <title>One Piece Generation</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
           <meta name="description" content="pour google" />
           <meta name="revisit-after" content="8 days" />
        
                <title>Styleswitcher</title>
                <link rel="stylesheet" media="screen, projection" type="text/css" id="css" href="<?php echo $url; ?>" />
   </head>
   <body>
       <div id="banniere">
 
</div>
 
<div id="conteneur">
 
<div id="boutons">
<table id="Tableau_01" width="786" height="48" border="0" cellpadding="0" cellspacing="0">
        <tr>
                <td class="bouton1">
                        </td>
                <td class="bouton2">
                        </td>
                <td class="bouton3">
                        </td>
                <td class="bouton4">
                        </td>
        </tr>
</table>
</div>
<div id="pub1"></div>
 
<div id="menu">
 
<ul id="styleswitcher">
                <li><a href="<?php echo $actuel; ?>?style=defaut">par défaut</a></li>
                <li><a href="<?php echo $actuel; ?>?style=onepiece">One Piece</a></li>
        </ul>
 
<? include("menu.php"); ?>
 
 
</div>
 
<div id="corps">
Nom de la série: One Piece
Auteur/Mangaka: Eiichirô Oda
Première apparition: Numéro 34 du Weekly Jump de 1997
Nombres de tomes:
Nombres d'épisodes:
Films: 6
<br/>
L'histoire:<br/>
 
Le Seigneur des pirates Gold Roger, avant de mourir a dit : "Mon trésor ? Si vous y tenez, vous n'avez qu'à le prendre ... Mais il vous faudra d'abord le chercher, car je l'ai caché quelque part dans ce vaste monde!". Sur ces mots, une vague de nouveaux pirates se lanca dans la fouille de ce fabuleux trésor aux quatres coins du monde.
 
Dans un petit village portuaire nommé Fushia Town vit Monkey D. Luffy, un jeune garçon qui, depuis le jour où il a fait la connaissance de Shanks Le Roux et de son équipage, rêve de devenir un pirate. Un jour Luffy mange un fruit du démon, ramené par Shanks lors d'un expédition, ce fruit à la faculté de rendre la personne qui le mange extensible à volonté mais la condamne à ne plus pouvoir nager. Ce n'est pas pour autant que le jeune garçon perd espoir de devenir pirate. Quelques années plutard, Luffy alors adolescence monte son propre équipage et prend la mer, il part à la recherche du fabuleux trésor laissé par Gold Roger: le One Piece. Celui qui trouvera ce mystérieux trésor deviendra alors, le "Seigneur des Pirates"... 
</div>
 
 
<div id="pub2">
</div>
 
</div>
 
</body>
 
</html>

Modifié par Tenshi (07 Oct 2007 - 18:52)
Modérateur
Bonjour Tenshi et bienvenue, Smiley jap

Qu'entends-tu par menu déroulant ?

Quelquechose comme ce que tu trouves ici ou comme ce que tu trouves là ? Smiley smile

Quoiqu'il en soit, le problème qui saute tout de suite aux yeux en regardant ton code, c'est le manque de sens des balises par rapport à leur contenu voire l'absence pure et simple de balisage aux endroits où ça devrait l'être. Smiley sweatdrop

Par exemple, si on désactive CSS, on se rend compte que ton site n'a pas de titre. De même, le menu horizontal disparait ; tes boutons ne devraient pas se trouver en background CSS -> Tout cela, c'est du contenu et ça a donc sa place dans le xhtml. Par ailleurs, ce n'est pas une table que tu devrais faire pour ton menu mais une liste ou bien un paragraphe, par exemple, ce qui serait déjà plus significatif. Concernant le corps, il y a manifestement des titres et des paragraphes mais là, tu n'as rien... juste une div pour englober le tout.
L'erreur la plus commune lorsqu'on débute ou qu'on n'est pas tombé sur les bonnes sources est de baliser son contenu en pensant mise en page alors qu'il faut agir en fonction du sens du texte. Par la suite, CSS est là pour embellir tout ça.

Aussi, je pense, en dehors de ton problème de styleswitcher, que tu devrais déjà revoir ces notions. Smiley cligne

Pour t'aider et mieux comprendre le pourquoi du comment, je t'invite à lire ces documents :

http://www.openweb.eu.org/articles/respecter_semantique/
http://blog.alsacreations.com/2005/07/28/175-semantique-semantique-est-ce-que-jai-une-tete-de-semantique
http://blog.alsacreations.com/2007/04/07/344-demarche-integration-html-css
http://css.alsacreations.com/Faire-une-mise-en-page-sans-tableaux/design-css
Modifié par koala64 (08 Oct 2007 - 21:27)
Tout d'abord, bonjour et merci pour ta réponse Smiley smile

Je ne débute pas vraiment, mais je ne me suis jamais vraiment penché sur le "problème" de la sémantique, et comme tu l'as dit et pu le constater je pense en premier lieu à la mise en page. Je vais tout de même éclaircire quelque points:

a écrit :
De même, le menu horizontal disparait ; tes boutons ne devraient pas se trouver en background CSS


En ce qui concerne le menu horizontal, je n'ai pas eu le choix de mettre les boutons en background CSS, car lorsque je mettais l'image des boutons dans la page html il y avait un décalage au niveau des images avec ma page en xhtml strict, pour résoudre ce problème je n'avais que 2 solutions, soit mettre ma page en transitional (au lieu de strict), soit mettre les images des boutons en background CSS, j'ai donc opté pour la seconde solution.

a écrit :
Par ailleurs, ce n'est pas une table que tu devrais faire pour ton menu mais une liste ou bien un paragraphe, par exemple, ce qui serait déjà plus significatif.


J'ai pris directement la forme à la sortie de ImageReady après le découpage des boutons.

a écrit :
Concernant le corps, il y a manifestement des titres et des paragraphes mais là, tu n'as rien... juste une div pour englober le tout.


Tu pourrait déveloper s'il te plait, je ne vois pas ce que je pourrais mettre à la place Smiley confus

Et enfin pour répondre à ta question, j'aimerai mettre un menu déroulant comme sur ce sitece site

Voila et merci pour ton aide Smiley cligne

En passant je vais mettre mon code CSS:

body
{
   width: 840px;
   margin: auto; /* Pour centrer notre page */
   margin-top: 0px; /* Pour éviter de coller avec le haut de la fenêtre du navigateur. Essayez d'enlever pour voir ! */
   margin-bottom: 0px;    /* Idem pour le bas du navigateur */
 	background-repeat: repeat;
    background-color: #8c8c8c;
}


#banniere
{
   width: 840px;
   height: 325px;
   background-repeat: no-repeat;
   margin-bottom: 0px;
      background-image:url('/images/header_op.jpg'); 
}

#conteneur {
 position: absolute;
 margin-top: 0px;
 width: 840px;
 background-image:url("/images/fond.jpg"); 
 border: 0px solid red;
 }
 
  #pub1
{

   width: 840px;
   height: 122px;

   background-color: #626262;
   background-image: url("/images/pub1.jpg");
   background-repeat: no-repeat;
   

}
 
  #menu 
 {
 float: left;
 margin-left:10px;
  width: 190px;

 border:0px solid green;
  font-family: Verdana, "Times New Roman", serif, "Trebuchet MS", Arial, "Arial Black", Times;
	  font-size: 11px;
 }
 
  #corps 
 {
 float: right;
 margin-right: 40px;
 width: 540px;
 border: 0px solid pink;
 padding-left: 20px;
   padding-right: 20px;
   padding-top: 12px;
   padding-bottom: 20px;
   
      font-family: Verdana, "Times New Roman", serif, "Trebuchet MS", Arial, "Arial Black", Times;
	  font-size: 11px;
   
   color: #e8e8e8;

 
 }
 
 #pub2
{

   width: 840px;
   height: 164px;
   background-image: url("/images/pub2.jpg");
   background-repeat: no-repeat;
   
   border: 0px solid black;
   
   clear:both;
}

#boutons
{
	background-position: center;
	 margin-left:25px;
}

.menu_site
{
width: 184px;
   height: 45px;
    background-image: url("/images/menu_site_op.jpg");
	border: 0px solid pink;
}

.menu_mangasanimes
{
width: 184px;
   height: 45px;
    background-image: url("/images/menu_mangasanimes_op.jpg");
	border: 0px solid pink;
}

 .element_menu
{
 
  
       font-family: Verdana, "Times New Roman", serif, "Trebuchet MS", Arial, "Arial Black", Times;
	  font-size: 11px;
	  
   border: 0px solid black;
   margin-bottom: 0px;
  
}

.element_menu a
{
   color: #bbbbbb;
        font-family: Verdana, "Times New Roman", serif, "Trebuchet MS", Arial, "Arial Black", Times;
	  font-size: 11px;
		text-decoration: none;
		  margin-left: -20px;
}

.element_menu a:hover
{
   background-color: ;
   color: #7e215a;
}

td.bouton1 {
background-image:url("/images/bouton_01.jpg");
width:188px; 
height:48px; 
}

td.bouton2{
background-image:url("/images/bouton_02.jpg");
width:193px; 
height:48px; 
}

td.bouton3 {
background-image:url("/images/bouton_03.jpg");
width:180px; 
height:49px; 
}

td.bouton4 {
background-image:url("/images/bouton_04.jpg");
width:225px; 
height:49px; 
}


Et également celui du menu en include:

<div id="menu">   

   <ul id="styleswitcher">
		<li><a href="<?php echo $actuel; ?>?style=defaut">Thème Par Défaut</a></li>
		<li><a href="<?php echo $actuel; ?>?style=onepiece">Thème One piece</a></li>
           </ul>       

		   <div class="element_menu">
               <div class="menu_site">
</div>
		

               <ul>
                   <li><a href="index.php">» Accueil</a></li>
                   <li><a href="http://japanimes.mangas.free.fr/forum/">» Forum</a></li>
                   <li><a href="staff.php">» Staff</a></li>
				   <li><a href="contact.php">» Contact</a></li>
				   <li><a href="livre_dor.php">» Livre d'Or</a></li>
				   <li><a href="concours.php">» Concours</a></li>
				   <li><a href="partenariat.php">» Partenariat</a></li>
				   <li><a href="recrutements.php">» Recrutements</a></li>
				   <li><a href="radio.php">» Radio</a></li>
				   
				   
               </ul>
           </div>
		   
		   <div class="element_menu">
               <div class="menu_mangasanimes">
</div>
		

               <ul>
			   <li><a href="onepiece.php">» One Piece</a></li>
			      <li><a href="naruto.php">» Naruto</a></li>
                 <li><a href="bleach.php">» Bleach</a></li>
				   <li><a href="db.php">» Dragon Ball</a></li>
				   <li><a href="fma.php">» FullMetal Alchemist</a></li>
                   <li><a href="gto.php">» Great Teacher Onizuka</a></li>

				   
               </ul>
           </div>
		   
   



</div>