При изменении стиля, меняется всё меню целиком.
<div class="menu">
<?php
$arr = array(
'index.php'=>'Главная',
'o_has.php'=>'О нас',
'reg.php'=>'Регистрация',
'kak_podkl.php'=> 'Как подключиться',
''=>'Карта мира',
''=>'Личный кабинет',
''=>'Список изменений',
''=>'Полезные статьи',
''=>'Форум'
);
foreach($arr as $key=>$value)
{
if($_SERVER['PHP_SELF']==$key) echo "<li class=\"menu li\"><a href='$key' >$value</a></li>";
else echo "<li id=\"li\"><a href='$key'>$value</a></li>";
}
?>
</div>
и срабатывает только последнее
else echo "<li id=\"li\"><a href='$key'>$value</a></li>";`
CSS:
.menu {
display:table;
width:100%;
table-layout:fixed;
border-collapse:collapse;
}
.menu li /*текущая страница*/
{ /* градиентное меню */
display:table-cell;
background:green;
padding:.5em;
text-align:center;
border:2px solid black;
background: green; /* Для старых браузров */
background: linear-gradient(to top, green, black);
padding: 10px;
border: 1px solid #333;
}
(решетка)li /*текущая страница*/
{ /* градиентное меню */
display:table-cell;
background:green;
padding:.5em;
text-align:center;
border:2px solid black;
background: green; /* Для старых браузров */
background: linear-gradient(to top, black, black);
padding: 10px;
border: 1px solid #333;
}
Помогите доработать код чтобы выделялся только текущий пункт меню.
Возможно $_SERVER['PHP_SELF'] возвращает '/index.php'. т.е. со слешем. скорее всего в этом дело. Посмотрите что находится в $_SERVER['PHP_SELF'].
И еще так делать в массиве нехорошо:
''=>'Карта мира',
''=>'Личный кабинет',
''=>'Список изменений',
''=>'Полезные статьи',
''=>'Форум'
лучше без ключей пишите
'Карта мира',
'Личный кабинет',
'Список изменений',
'Полезные статьи',
'Форум'
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
что я делаю не так? не работает и все тут :( нужно при наведении что бы на картинку накладывался цвет. Я наверное не знаю хитрость :).
Здравствуйте. Есть блоки, которые при определенном разрешении экрана должны становиться невидимы.