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
245
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
245
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
245
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