Никак не могу разобраться, как сделать, что при переходе на странице та ссылка по которой перешел подсвечивалась...потом перешел по другой, другая подсвечивалась на своей активной странице.
Подскажите плиз) вроде должно быть легко.
1. Defenderyk - 8 июля 2010 — 16:22 - перейти к сообщению
2. Светлана - 8 июля 2010 — 16:45 - перейти к сообщению
В хтмл легко. Но на каждой странице, на которую переходите нужно разместить id, например:
<div id="current"><a href="index.html">ГЛАВНАЯ</a></div>
В стилях, для примера:
#nav a {color: #2E415F; text-decoration:none; font-size:9px; text-align:center; display:block; background:url(img/2u.gif); width:100%; padding: 7px 0px 7px 0px; }
#nav a:hover {background: #C7CACD url(img/1u.gif); font-size:9px; text-align:center;}
#current a {background: #3C567C url(img/6u.gif);font-size:9px; text-align:center; color:#fff }
<div id="current"><a href="index.html">ГЛАВНАЯ</a></div>
В стилях, для примера:
#nav a {color: #2E415F; text-decoration:none; font-size:9px; text-align:center; display:block; background:url(img/2u.gif); width:100%; padding: 7px 0px 7px 0px; }
#nav a:hover {background: #C7CACD url(img/1u.gif); font-size:9px; text-align:center;}
#current a {background: #3C567C url(img/6u.gif);font-size:9px; text-align:center; color:#fff }
3. Defenderyk - 8 июля 2010 — 18:33 - перейти к сообщению
это я знаю, но это если чисто html страницы
а у меня php, т.е навигация одна для всех страниц. т.е здесь как то надо задавать в php чтобы при такой то странице выводился стиль current
а у меня php, т.е навигация одна для всех страниц. т.е здесь как то надо задавать в php чтобы при такой то странице выводился стиль current
4. Светлана - 9 июля 2010 — 10:25 - перейти к сообщению
У себя сделала так, что на каждую страницу вызывается блок меню. Не грамотно, зато работает. Вес блока маленький. По уму это делается ява-скриптом.
5. electron - 9 июля 2010 — 13:29 - перейти к сообщению
Defenderyk пишет:
что мешает создать файл .css общий для всех страниц (или для каждой в отдельности) и прописать в нем нужный стиль нав и нав аховер?
это я знаю, но это если чисто html страницы
а у меня php, т.е навигация одна для всех страниц. т.е здесь как то надо задавать в php чтобы при такой то странице выводился стиль current
а у меня php, т.е навигация одна для всех страниц. т.е здесь как то надо задавать в php чтобы при такой то странице выводился стиль current
6. Defenderyk - 10 июля 2010 — 15:45 - перейти к сообщению
electron пишет:
еу это извращение ИМХО) а если страниц 100, тогда что 100 стилей создавать?)
что мешает создать файл .css общий для всех страниц (или для каждой в отдельности) и прописать в нем нужный стиль нав и нав аховер?
7. yura3d - 12 июля 2010 — 10:51 - перейти к сообщению
Приведу сообщение Defenderyk из переписки в аське:
Применить возможно, но всё же это будет несколько костыльный (временный) вариант, который нежелательно использовать в случае, если ссылок довольно много. Вот пример ссылки на некоторый файл (пусть им будет, например, counters.php):
Всё верно. Вообще генерация имён стилей на уровне сервера - признак нехорошего тона, обычно к такому способу прибегают лишь в тех случаях, когда по-другому решить задачу нельзя (например, в случае с чередованием фона в табличных списках). Задача же с меню (навигацией) универсальнее реализуется на JS, поскольку в этом случае отпадают некоторые нюансы, такие как особенности шаблонизатора и т.п.
Defenderyk пишет:
видел такой пример:
т.е находясь на странице op=3 ссылка определяется со стилем current
но вот как применить такое же к обычным страницам а-ля index.php и т.д
CODE:
<a href="&op=3"'.(isset($_GET['op']) && $_GET['op'] == 3 ? ' class="current"' : '').'>Счетчики</a>
т.е находясь на странице op=3 ссылка определяется со стилем current
но вот как применить такое же к обычным страницам а-ля index.php и т.д
Применить возможно, но всё же это будет несколько костыльный (временный) вариант, который нежелательно использовать в случае, если ссылок довольно много. Вот пример ссылки на некоторый файл (пусть им будет, например, counters.php):
CODE:
<a href="counters.php"'.(basename($_SERVER['PHP_SELF']) == 'counters.php' ? ' class="current"' : '').'>Счетчики</a>
Светлана пишет:
По уму это делается ява-скриптом.
Всё верно. Вообще генерация имён стилей на уровне сервера - признак нехорошего тона, обычно к такому способу прибегают лишь в тех случаях, когда по-другому решить задачу нельзя (например, в случае с чередованием фона в табличных списках). Задача же с меню (навигацией) универсальнее реализуется на JS, поскольку в этом случае отпадают некоторые нюансы, такие как особенности шаблонизатора и т.п.
8. Defenderyk - 12 июля 2010 — 12:02 - перейти к сообщению
yura3d пишет:
а есть примеры реализации?
Задача же с меню (навигацией) универсальнее реализуется на JS, поскольку в этом случае отпадают некоторые нюансы, такие как особенности шаблонизатора и т.п