-
meniu
Am un meniu dhtml, de genul
<div id="dlmenu">
<ul id="menu">
<li>
<!--[if lte IE 6]><a href="#nogo"><table><tr><td><![endif]-->
<dl class="gallery">
<dt><a href="#">Bla bla </a></dt>
....
</dl>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
</div>
<!-- end menu -->
care are in css :
#dlmenu {height:10em;}
#menu {list-style-type:none; margin:0 0 10px; padding:0; position:absolute; width:5em; background:#fff; z-index:100;}
#menu li {display:block; padding:0; margin:0; position:relative; z-index:100;}
#menu li a, #menu li a:visited {display:block; text-decoration:none;}
#menu li dd {display:none;}
#menu li:hover, #menu li a:hover {border:0;}
#menu li:hover dt a , #menu li a:hover dt a {background:#d4d8bd url(top_grad_2.gif) center center; color:#ff0; }
#menu li:hover dd, #menu li a:hover dd {display:block;}
#menu li:hover dl, #menu li a:hover dl {height:30em; background:#b4be9c url(sub_grad.gif);}
#menu table {border-collapse:collapse; padding:0; margin:-4px; font-size:10px;}
#menu dl {width: 18.55em; margin: 0; background: #6f9c6f; cursor:pointer;}
#menu dt {margin:0; padding: 0; font-size: 12px; border-top:1px solid #cce;}
#menu dd {margin:0; padding:0; font-size: 10px; text-align:left; }
.gallery dt a, .gallery dt a:visited {display:block; color:#fff; padding:5px 5px 5px 10px; background:#949e7c url(top_grad.gif) center center;}
.gallery dd a, .gallery dd a:visited {color:#000; min-height:1em; text-decoration:none; display:block; padding:4px 5px 4px 20px; background:#b4be9c url(sub_grad.gif);}
* html .gallery dd a, * html .gallery dd a:visited {height:1em;}
.gallery dd a:hover {background:#7aa; color:#ff0;}
As vrea , daca se poate, , sa fac in asa fel incat sa scriu o data meniul undeva si apoi sa il accesez in toate paginile. Nu stiu, probabil e nevoie de un javascript ceva. Nu stiu php si nici varianta cu frameul nu ma incanta.
Exista alte solutii?
-
Ca sa faci asa ceva ti-ar cam trebuii niste cunostiinte de programare.Faci in php o clasa de ex.
Cod PHP:
function showmenu() {
$text = "<div class='dlmenu'> .... restu de cod...";
return $text;
}
si pe urma unde vrei sa il folosesti faci ceva de genul
Cod PHP:
<?
showmenu();
?>
Si nu inteleg de ce folosti chestia cu <!--[if lte IE 6]> ca sa bagi un table intr-un li, si ar trebuii oricum sa bagi in head cu un css si in cod sa iti pui clase.
-
js vs php...
Pai css-ul este clar.. il pui separat si il incluzi in fiecare pagina, ca ai nevoie de el... oricum
Pentru meniu in schimb, exista varianta sa il faci cu javascript... dar nu este indicata din mai multe motive:
- js-ul se executa la client si depinde de setarile browserului. daca js este disabled.. meniul tau nu va aparea.
- meniul nu va fi vazut de motoarele de cautare.
In js poti sa ai o metoda de genul
Cod:
function showMenu() {
document.write("<ul>");
document.write("<li>");
...
}
metoda care o apelezi pe evenimenul onload din body
<body onload="showMenu()">
Dar cea mai buna varianta ramane php-ul... este mult mai flexibil.
Poti sa iti faci meniul separat.. si sa foloseti include sau require ca sa il afisezi... Totul se executa pe server si este vizibil motoarelor de cautare.
-
dar vezi ca la js apare o problema.. pt. ca o sa il scrie aiurea in pagina :)
ar trebui sa il scrii tot codul html intr-o variabila si dupa aceea sa folosesti innerHTML ca sa il arunci in container-ul care te intereseaza