| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Вёрстка веб-сайтов > Активная кнопка |
| Автор: lsm 12.7.2010, 11:17 |
| Господа, подскажите пожалуйста, как в CSS сделать так, чтобы кнопка оставалась активной при просмотре одноименного раздела, на который она ведет, и переставала быть активной при переходе в любой другой раздел? Например, мы находимся в разделе "Услуги", то кнопка "Услуги" выделяется (подсвечивается), если переходим в раздел "О компании" - выделяется кнопка "О компании"!!! Я хочу сделать так, чтобы она залипала до тех пор, пока мы будем в данном разделе! :hover работает, но как сделать, чтобы она залипала в том же положении, что и :hover до тех пор, пока мы находимся в разделе! Вот код: a#lm1 { display:block; width: 176px; height: 36px; background-image: url(images/lm.gif); background-position: 0px 0px; margin: 0 auto; } a#lm1:hover { background-position: 176px 0px; } Что нужно в него добавить? Помогите, пожалуйста! Добавлено через 55 секунд На одном сайте, где это работает, код выглядит так, но я не думаю, что нижнее подчеркивание после a#mm1 "_"имеет решающую роль и заставляет кнопку оставаться активной... a#mm1 { display:block; width: 105px; height: 38px; background-image: url(images/mm.gif); background-position: 0 0; margin: 0 auto; } a#mm1_ { display:block; width: 105px; height: 38px; background-image: url(images/mm.gif); background-position: 0 -38px; margin: 0 auto; } a#mm1:hover { background-position: 0 -38px; } |
| Автор: Mavrun 12.7.2010, 11:28 |
| по идее a:active должна выполнять такую роль. но вроде как она баганая и не работает как следует везде. поэтому можно либо скрипт на js, либо на php написать, чтобы он дописывал определённый класс той ссылке, по адресу которой мы находимся. ну а класс этот будет там подчёркивание или изменение цвета содержать |
| Автор: lsm 12.7.2010, 11:43 |
| Спасибо, Mavrun! a:active, к сожалению не работает... Не подскажешь, как на php дописать? Сайт сделан полностью на php плюс стили в CSS... Если бы в html - то можно было бы задать стиль кнопки для каждого раздела свой, а так - |
| Автор: ksnk 12.7.2010, 12:50 |
| lsm, каким образом мы переходим из раздела в раздел? Кликать по кнопке и перерисовывать весь текст? Тогда сервер, который строит текст и должен выжделять нужную кнопку. Стилем, например специальным. |
| Автор: Mavrun 12.7.2010, 13:10 |
| Тебе нужно будет: 1) создать стиль для ссылок, чтобы показать как они должны выглядеть если мы находимся по ней 2) каждой ссылке прописать на пхп условие типа if (урл_такой-то) echo class="название класса активной ссылки" 3) чтобы определить какой урл, нужно вытащить из глобального массива $_SERVER адрес, по которому мы находимся, и его сравнивать. об этом массиве можно почитать по ссылке http://shublog.ru/php/superglobalnyjj-massiv-_server-v-php-http_server_vars/ |
| Автор: lsm 12.7.2010, 13:14 |
| Спасибо Mavrun за комментарии - очень помог!!!! |
| Автор: skyboy 13.7.2010, 10:51 |
псевдокласс :active назначается, если навести курсор и кликнуть по элементу. пока клавиша мыши нажата - у элемента будет псевдокласс :active |
| Автор: Mavrun 13.7.2010, 11:04 |
| 2skyboy, спасибо. мне почему-то всю жизнь казалось, что эктив должен выполнять был роль именно того, что в ней находимся. может в прошлом не так научили... |