
Et une question de plus, comment faire pour que le pied de page reste visible quelle que soit la résolution du visiteur? il faudrait que les sidebar gauche et droite ainsi que le content s'adapte automatiquement. Une idée???
Infiniment merci!!!

Modérateur : chinon37
Code : Tout sélectionner
<h2>
<title>Menu déroulant vertical sur clic</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="menu.css" type="text/css" />
<script type="text/javascript" src="functions.js"></script>
<div id="menu">
<div class="menu" id="ACCUEIL" onclick="afficheMenu(this)">
<a href="http://www.exometeofraiture.net">ACCUEIL</a>
</div>
<div class="menu" id="menu1" onclick="afficheMenu(this)">
<a href="#">JARDIN</a>
</div>
<div id="sousmenu1" style="display:none">
<div class="sousmenu">
<a href="#">2006</a>
</div>
<div class="sousmenu">
<a href="#">2007</a>
</div>
<div class="sousmenu">
<a href="#">2008</a>
</div>
<div class="sousmenu">
<a href="#">2009</a>
</div>
<div class="sousmenu">
<a href="#">2010</a>
</div>
<div class="sousmenu">
<a href="#">Wallonie Bienvenue</a>
</div>
<div class="sousmenu">
<a href="#">Bassin</a>
</div>
<div class="sousmenu">
<a href="#">Tourbière 2006</a>
</div>
<div class="sousmenu">
<a href="#">Tourbière 2007</a>
</div>
<div class="sousmenu">
<a href="#">Webcam</a>
</div>
</div>
<div class="menu" id="menu2" onclick="afficheMenu(this)">
<a href="#">REPORTAGES</a>
</div>
<div id="sousmenu2" style="display:none">
<div class="sousmenu">
<a href="#">Les serres de Laeken</a>
</div>
<div class="sousmenu">
<a href="#">Fraiture et ses environs</a>
</div>
<div class="sousmenu">
<a href="#">Le jardin de Christian</a>
</div>
<div class="sousmenu">
<a href="#">Les Jardins d'Annevoie</a>
</div>
<div class="sousmenu">
<a href="#">Côte d'Azur 2008-1</a>
</div>
<div class="sousmenu">
<a href="#">Côte d'Azur 2008-2</a>
</div>
<div class="sousmenu">
<a href="#">Protection hivernale</a>
</div>
<div class="sousmenu">
<a href="#">Balcon fleuri</a>
</div>
<div class="sousmenu">
<a href="#">Le parc Pairi Daiza</a>
</div>
<div class="sousmenu">
<a href="#">Chartreuse 2010</a>
</div>
</div>
<div class="menu" id="menu3" onclick="afficheMenu(this)">
<a href="#">APICULTURE</a>
</div>
<div id="sousmenu3" style="display:none">
<div class="sousmenu">
<a href="#">Mon rucher</a>
</div>
<div class="sousmenu">
<a href="#">Rucher-école (ville de Huy)</a>
</div>
</div>
<div class="menu" id="menu4" onclick="afficheMenu(this)">
<a href="#">METEOROLOGIE</a>
</div>
<div id="sousmenu4" style="display:none">
<div class="sousmenu">
<a href="#" >Météo en direct-station</a>
</div>
<div class="sousmenu">
<a href="#">Radars, satellites,...</a>
</div>
<div class="sousmenu">
<a href="#">Prévisions belges</a>
</div>
<div class="sousmenu">
<a href="#">Webcam du ciel</a>
</div>
</div>
<div class="menu" id="menu5" onclick="afficheMenu(this)">
<a href="#">ORNITHOLOGIE</a>
</div>
<div id="sousmenu5" style="display:none">
<div class="sousmenu">
<a href="#" >Mangeoire</a>
</div>
<div class="sousmenu">
<a href="#">Nichoir 2008</a>
</div>
<div class="sousmenu">
<a href="#">Nichoir 2009</a>
</div>
<div class="sousmenu">
<a href="#">Installation webcam</a>
</div>
<div class="sousmenu">
<a href="#" >Webcam</a>
</div>
</div>
<div class="menu" id="menu6" onclick="afficheMenu(this)">
<a href="#">DIVERS</a>
</div>
<div id="sousmenu6" style="display:none">
<div class="sousmenu">
<a href="#">Liens</a>
</div>
<div class="sousmenu">
<a href="#">Fourre-tout</a>
</div>
</div>
</h2>
Code : Tout sélectionner
<title>Menu déroulant vertical sur clic</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="menu.css" type="text/css" />
<script type="text/javascript" src="functions.js"></script>
Code : Tout sélectionner
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Code : Tout sélectionner
<div id="sidebar1">
<h2><?php include ("menu.php"); ?></h2>
</div>
Je me permets d'intervenir sur un fil sur lequel je n'ai encore fait qu'une brève apparition. Faute de temps.fcalmant a écrit :Merci Olivier! Où dois-je alors mettre mon include de munu dans la sidebar de gaucheCode : Tout sélectionner
<div id="sidebar1"> <h2><?php include ("menu.php"); ?></h2> </div>
Code : Tout sélectionner
<div id="sidebar1">
<?php include ("menu.php"); ?>
</div>
ça ne marche pas, ça décale tout sur la gauche... regarde le résultatYmai a écrit :BonjourJe me permets d'intervenir sur un fil sur lequel je n'ai encore fait qu'une brève apparition. Faute de temps.fcalmant a écrit :Merci Olivier! Où dois-je alors mettre mon include de munu dans la sidebar de gaucheCode : Tout sélectionner
<div id="sidebar1"> <h2><?php include ("menu.php"); ?></h2> </div>
Le "menu" du site n'a strictement aucune raison de figurer dans une structure de titre. Le menu n'est pas un titre.
Donc, quelque chose commeSerait déjà infiniment mieux.Code : Tout sélectionner
<div id="sidebar1"> <?php include ("menu.php"); ?> </div>
[edit]Bon, en même temps, ça fait un peu harcèlement) [/edit]
Ça peut aider, bien sûr. Mais je me demande si les bases les plus saines ne partiraient pas d'une feuille de papier et d'un crayon. Un petit dessin de ce qui est souhaité finalement.FF_Olivier a écrit :Avant de te préoccuper de ton CSS, je te suggère de toujours finaliser d'abord le code HTML de ta page, en le passant p. ex. à la moulinette du validateur W3C, ainsi tu seras sûr de travailler et de développer le CSS sur des bases saines.
Le temps d'enfiler mon sac à dos et je suis à vous.PS : belles photos sur le site, ça donne envie de se balader !
Code : Tout sélectionner
<?php include ("menu.php"); ?>
Code : Tout sélectionner
<div id="sidebar1">
<ul id="menuGauche">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 3</a></li>
</ul>
</div>
Code : Tout sélectionner
#menuGauche {
padding: 2em;
}
#menuGauche li {
list-style-type: none;
margin: 0.5em 0;
border: 1px solid grey;
}
#menuGauche li a {
text-decoration: none;
background-color: #f00;
color: #0ff;
display: block;
padding: 0 0.5em;
}
#menuGauche li a:hover {
text-decoration: underline;
background-color: pink;
color: #f0f;
}
Toutafée. Mais rien n'empêche de mettre tout ça dans un fichier include. C'est même une excellente idée.fcalmant a écrit :![]()
Mais bon, mon menu sera souvent modifié et doit apparaitre dans toutes les pages, c'est pour cela que j'ai opté pour un include php...
Argh... La démonstration est particulièrement malheureusefcalmant a écrit :De" plus la présence de sous menus me semble plus gérable en js. Regarde ici http://www.exometeofraiture.net/menu.php et sa css http://www.exometeofraiture.net/menu.css
Code : Tout sélectionner
<ul id="menu">
<li>item 1</li>
<li>Item 2
<ul class="sousmenu">
<li>Item 2a</li>
<li>Item 2b</li>
</ul>
</li>
<li>Item 3</li>
</ul>
Effectivement, pour que ça fonctionne sous IE, il faut... un petit hack en JS, comme mentionné sur la page. J'avais même oublié que IE, ça existe encore.fcalmant a écrit :Merci ymai, le chinon37 me semble en effet intéressant. Je vais essayer de plancher là-dessus! Je suis une daube malheureusement, je vais encore galérer...
EDIT: extra ça marche!! mais pas sur ie...
Comme IE ne supporte pas le sélecteur LI:hover (sauf IE7 semble-t'il), les menus déroulants nécessitent une rustine JavaScript : ieHover.js. Pour que ce script ne soit chargé que sous IE, on utilise ce code (à placer dans le <head>) :
Code : Tout sélectionner
// this emulates the "LI:hover" CSS selector for IE
// requires a "li.hover" duplicate selector in the stylesheet
function IEpatchLiHover(name) {
var ulList = document.getElementsByTagName("UL");
for (var j = 0; j < ulList.length; j++) {
//~ if (ulList[j].className == name) {
if (ulList[j].className.indexOf(name) >= 0) {
var liList = ulList[j].getElementsByTagName("LI");
for (var i = 0; i < liList.length; i++) {
// normal code
//~ liList[i].setAttribute("onmouseover", "this.className='hover'");
//~ liList[i].setAttribute("onmouseout", "this.className=''");
// IE code
liList[i].onmouseover = function() { this.className='hover' };
liList[i].onmouseout = function() { this.className='' };
}
}
}
}
//~ IEpatchLiHover("navlist"); // applies the patch to every UL.navlist
window.onload = function() { IEpatchLiHover("navlist") };
Code : Tout sélectionner
(// requires a "li.hover" duplicate selector in the stylesheet)
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités