Autor Zpráva
HGD
Profil
Lidi pomoc, už sem zkoušel všechno možný, ale furt to nefachá :(
Mam v souboru menu, kde je:
<head>

<meta http-equiv="content-type" content="text/html; win 1250" />

<!-- **** layout stylesheet **** -->
<link rel="stylesheet" type="text/css" href="style/style.css" />

</head>
<div id="menu">
<ul>
<li><a href="index.php">Index</a></li>
<li><a href="page1.php">Page 1</a></li>
<li><a href="contact.php">Kontakt</a></li>
</ul>
</div>


a k tomu je css:
#menu li a 

{ background: #FFFFFF url(menu.png);
color: #DBD7D1;
border-color: #D7D7D7;
display: block;
float: left;
height: 37px;
text-decoration: none;
padding: 3px 19px 2px 19px;
text-transform: uppercase;
}

#menu li a:hover
{ background: #FFFFFF url(menu_hover.png);
color: #70695A;
}


A potřebuju, když bude stránka akktivní, aby zůstalo stejný zobrazení jako u a:hover
Zkoušel sem přidat, #menu li a:active ale nic, pořád to fuguje jen po najetí myší
tiso
Profil
:active funguje inak ako chceš, musíš si nastaviť triedu (prípadne id) pre ten odkaz na konkrétnej stránke a vytvoriť príslušný štýl...
HGD
Profil
ale to bych musel nastavit v každym souboru tu třídu
jenomže já mam menu v souboru menu.php a ten volam přes php "include" zpátky do indexu
tiso
Profil
A ako vyzerá súbor menu.php? V PHP totiž nie je problém nastaviť tú triedu automaticky...
HGD
Profil
<head>
<meta http-equiv="content-type" content="text/html; win 1250" />

<!-- **** layout stylesheet **** -->

<link rel="stylesheet" type="text/css" href="style/style.css" />
</head>
<div id="menu">
<ul>
<li><a href="index.php">Index</a></li>
<li><a href="page1.php">Page 1</a></li>
<li><a href="contact.php">Kontakt</a></li>
</ul>
</div>
tiso
Profil
napríklad takto:
<ul>

<?php
$menu[0]=array("href" => "index.php", "text" => "Index");
$menu[1]=array("href" => "page1.php", "text" => "Page 1");
$menu[2]=array("href" => "contact.php", "text" => "Kontakt");
foreach ($menu as $value){
if('/'.$value["href"]==$_SERVER["PHP_SELF"]){
echo '
<li><a href="'.$value["href"].'" class="active">'.$value["text"].'</a></li>';
}
else{
echo '
<li><a href="'.$value["href"].'">'.$value["text"].'</a></li>';
}
}
?>
</ul>
HGD
Profil
tak to asi ne-e, pořád to funguje jen po najetí myší :(
tiso
Profil
HGD a nastavil si si css pre #menu li a.active?
HGD
Profil
jo, díky moc, už to běhá, akorát sem nepobral, proč je tam:
#menu li a.active
-mam namysli tu tečku po "A", dyk se jinak píše ":" nebo ne?
tiso
Profil
:active je označenie pseudotriedy (takisto ako :hover, :link a podobne), .active je označenie triedy (class="active", ktorú nastavujem pomocou PHP)
HGD
Profil
tak to zase moc nefunguje :(
Na localhostu to jede v pohodě, ale jakmile to hodim na FTP tak to funguje jenom jako po najetí myši :(
tiso
Profil
HGD a link si nechal kde? Alebo mám (máme) hádať prečo to nejde?
HGD
Profil
Sorry, jestli myslíš na ten web kde testuju, tak >>ZDE<<
tiso
Profil
HGD tak to je jasné - máš web v adresári edisk, takže podmienka: if('/'.$value["href"]==$_SERVER["PHP_SELF"]){
nebude nikdy splnená... Riešenie - substring, ale za ruiččku Ťa vodiť už nebudem, musí Ti stačiť čo som tu napísal... Pravdepodobne nerozumieš čo ten skript vlastne robí, skús na sebe popracovať a uč sa...
HGD
Profil
já bych popracoval ;) ale kdyby někde na netu byla nějaká pškná učebnice, kde je to postupně popsaný :D
tiso
Profil
vysvetlenie funkcií je na php.net, seriál o PHP je na linuxsoft.cz, ale programovať sa musíš naučiť sám, to Ťa nikto nenaučí...
HGD
Profil
tak sem na to přišel :D díky moc !
if('/edisk/'.$value["href"]==$_SERVER["PHP_SELF"]){
HGD
Profil
tak huž to zase nefachá :( ,protože sem změnil odkazy, teď je to menu takle:
<?php
$menu[0]=array("href" => "index.php?page=uvod", "text" => "Index");
$menu[1]=array("href" => "index.php?page=about", "text" => "O nás");
$menu[2]=array("href" => "http://h-design.tym.cz/forum/", "text" => "Fórum");
$menu[3]=array("href" => "index.php?page=faq", "text" => "Faq");
$menu[4]=array("href" => "index.php?page=contact", "text" => "Kontakt");
foreach ($menu as $value){
if('/'.$value["href"]==$_SERVER["PHP_SELF"]){
echo '
<li><a href="'.$value["href"].'" class="active">'.$value["text"].'</a></li>';
}
else{
echo '
<li><a href="'.$value["href"].'">'.$value["text"].'</a></li>';
}
}
?>


Nevěděli byste co s tim teď? díky
tiso
Profil
HGD vedel, ale neriešim...
HGD
Profil
hmm, díky, ste ohromě ochotný
Toto téma je uzamčeno. Odpověď nelze zaslat.

0