Style css pour balise

Résolu/Fermé
Rom190686 Messages postés 436 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 20 novembre 2015 - 17 mars 2010 à 14:34
Rom190686 Messages postés 436 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 20 novembre 2015 - 17 mars 2010 à 15:28
Bonjour, J'utilise les feuilles de style css pour mettre en forme mon site web.
Je voudrais ajouter une petite touche de décoration mais je ne trouve pas la solution.
Mon menu est en haut à l'horizontale et je voudrais que lorsque l'on clique sur un lien du menu et que la nouvelle page s'affiche, le lien sélectionné reste avec la mise en forme que j'ai choisie pour le a:hover et ainsi de suite chaque fois que l'on change de page.
Je veux ajouter ce petit truc, juste pour savoir sur quelle page on est.
Merci d'avance !

9 réponses

swoog42 Messages postés 1059 Date d'inscription mercredi 30 septembre 2009 Statut Membre Dernière intervention 16 décembre 2018 244
17 mars 2010 à 14:38
un petit coup de php pourrait résoudre le problème

avec une URL du type www.monsite.fr/?page=a

<?php
				if(isset($_GET['page']))
				{
					switch ($_GET['page']) {
					case a:
						$page='accueil';
						break;
					case t:
						$page='tarif';
						break;
					case n:
						$page='news';
						break;
					case c:
						$page='contact';
						break;
					case p:
						$page='partenaires';
						break;
					case f:
						$page='fiscale';
						break;
					default:
						$page='accueil';
						break;
					
					}
				}
				else $page='accueil';
				include $page . ".php";
			?>




<a href="https://www.pagesjaunes.fr/?page=a" <?php if ($page=='accueil') echo ('class="active"') ?>>ACCUEIL</a>
		<a href="https://www.pagesjaunes.fr/?page=t" <?php if ($page=='tarif') echo ('class="active"') ?>>TARIFS</a>
		<!-- <a href="https://www.pagesjaunes.fr/?page=n">NEWS</a> -->
		<a href="https://www.pagesjaunes.fr/?page=c" <?php if ($page=='contact') echo ('class="active"') ?>>CONTACT</a>
		<a href="https://www.pagesjaunes.fr/?page=p" <?php if ($page=='partenaires') echo ('class="active"') ?>>PARTENAIRES</a>
		<a href="https://www.pagesjaunes.fr/?page=f" <?php if ($page=='fiscale') echo ('class="active"') ?>>FISCALIT&Eacute;</a>
1
Rom190686 Messages postés 436 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 20 novembre 2015 35
17 mars 2010 à 14:41
ok, ensuite dans ma feuille css je definie la classe "active" c'est ca?
0
Par contre tu auras 1 feuille CSS par page html !!!

t'as ton menu comme ça dans le code html :

<ul>
<li class="accueil"><a href="#" title="accueil">Accueil</a></li>
<li class="menu1"><a href="#" title="menu1">Menu1l</a></li>
<li class="menu2"><a href="#" title="menu2">Menu2</a></li>
</ul>


Le CSS de l'accueil :

ul .accueil{
background-color:jaune;
}

ul .menu1, ul.menu2{
background-color:bleu;
}

Le CSS de la page qui correspond au "menu1" :

ul .accueil a{
background-color:yellow;
}

ul .menu1 a, ul .menu2 a{
background-color:blue;
}
1
Desolé j'ai buggé !!!! Voila le vrai exemple :


t'as ton menu comme ça dans le code html :

<ul>
<li class="accueil"><a href="#" title="accueil">Accueil</a></li>
<li class="menu1"><a href="#" title="menu1">Menu1l</a></li>
<li class="menu2"><a href="#" title="menu2">Menu2</a></li>
</ul>


Le CSS de l'accueil :

ul .accueil a{
background-color:yellow;
}

ul .menu1 a, ul .menu2 a{
background-color:blue;
}


Le CSS de la page qui correspond au "menu1" :

ul .menu1 a{
background-color:yellow;
}

ul .accueil a, ul .menu2 a{
background-color:blue;
}
1
Rom190686 Messages postés 436 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 20 novembre 2015 35
17 mars 2010 à 15:19
Ok, merci ça fonctionne mais c'est très long car j'ai plus de 50 pages.
N'y a t-il pas une solution plus courte? Peut-etre du javascript?
0
JeDetesteMaPSP Messages postés 1743 Date d'inscription dimanche 3 janvier 2010 Statut Membre Dernière intervention 4 mai 2014 424
17 mars 2010 à 14:36
Je comprends pas, tu veux faire que quand tu clique il se passe quoi?
Je pense que tu vas devoir faire du JS :D.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
swoog42 Messages postés 1059 Date d'inscription mercredi 30 septembre 2009 Statut Membre Dernière intervention 16 décembre 2018 244
17 mars 2010 à 14:42
j'avais oublié la partie CSS

a.active { 
		background-image: ton image
}



0
Rom190686 Messages postés 436 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 20 novembre 2015 35
17 mars 2010 à 14:53
Voici le message d'erreur suite au code que tu m'a donné :
Notice: Use of undefined constant a - assumed 'a' in C:\wamp\www\mon-site\includes\menu.php on line 5
0
swoog42 Messages postés 1059 Date d'inscription mercredi 30 septembre 2009 Statut Membre Dernière intervention 16 décembre 2018 244
17 mars 2010 à 14:58
passe tout le code de ta page
0
pourquoi ne pas changer l'image de fond du texte :

par exemple tu es sur la page d'accueil, le fond de l'onglet "accueil" est jaune, le fond de l'onglet "menu1" est bleu
Quand tu es sur la page "menu1.php" tu change le fond de l'onglet "menu1" en jaune, et le fond de l'onglet "accueil" en bleu !

T'as juste à alterner les images via le CSS !! :O
0
Rom190686 Messages postés 436 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 20 novembre 2015 35
17 mars 2010 à 15:03
C'est ce que je veux faire mais je ne sais pas comment. Peux-tu me donner un exemple stp
0
je peu te proposer ce lien avec du php :

http://www.siteduzero.com/tutoriel-3-37341-menus-en-onglets.html#ss_part_4
0
Rom190686 Messages postés 436 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 20 novembre 2015 35
17 mars 2010 à 15:28
merci c'est ok
0