Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проблема с a:active
 
 автор: kireyev   (10.03.2008 в 00:00)   письмо автору
 
 

HTML:
<div id="menu1" class="left"><a href="index.php"></a></div>

CSS:
  #menu1 a {
    display: block;
    height: 20px;
    width: 59px;
    background: url("images/menu1.jpg") 0 0 no-repeat;
  }
  #menu1 a:hover {
    background: url("images/menu1.jpg") -59px 0 no-repeat;
  }
  #menu1 a:active {
    background: url("images/menu1.jpg") -118px 0 no-repeat;
  }

Все прекрасно, только a:active не срабатывает! Что может быть?
Если рассуждать, что дело в a:visited, то вроде как это описано тут: #menu1 a {...} и к тому же a:active сидит ниже всех...
Затем попробовал так:
  #menu1 a {
    display: block;
    height: 20px;
    width: 59px;
    background: url("images/menu1.jpg") 0 0 no-repeat;
  }
  #menu1 a:visited {
    background: url("images/menu1.jpg") -100px 0 no-repeat;
  }
  #menu1 a:hover {
    background: url("images/menu1.jpg") -59px 0 no-repeat;
  }
  #menu1 a:active {
    background: url("images/menu1.jpg") -118px 0 no-repeat;
  }

Теперь когда у меня ссылка активна - она отображается как посещенная (visited). Как быть-то?

   
 
 автор: Lstasss   (10.03.2008 в 03:17)   письмо автору
 
   для: kireyev   (10.03.2008 в 00:00)
 

пробуйте a:visited:active, a:visited:hover

   
 
 автор: kireyev   (10.03.2008 в 09:58)   письмо автору
 
   для: Lstasss   (10.03.2008 в 03:17)
 

Такая конструкция не будет работать в старых браузерах
и картинка у меня разная для :link, :hover, :active
Ну что же делать? кто скажет?

   
 
 автор: AlexSol   (10.03.2008 в 10:31)   письмо автору
 
   для: kireyev   (10.03.2008 в 09:58)
 

active только для якорей <a href=url#anhor >, если переходите на другую страницу по active забудьте.

   
 
 автор: kireyev   (10.03.2008 в 10:39)   письмо автору
 
   для: AlexSol   (10.03.2008 в 10:31)
 

Видимо придется подключить PHP...
Вчера на сайте ibm.com читал про active - там было написано, что оно нужно для промежутка когда пользователь уже нажал на кнопку мыши, но еще не отпустил ее - выходит так оно и есть...

   
 
 автор: kireyev   (10.03.2008 в 11:05)   письмо автору
 
   для: kireyev   (10.03.2008 в 10:39)
 

Ну раз больше предложений нет, надо бы закончить ветку форума дабы тот кто будет искать ответ на такой же вопрос найдет его здесь:

Решил сделать так...
HTML:
<div <? if ($_SERVER['PHP_SELF'] == "/uslugi.php") { ?> id="menu1_1" <? } else { ?> id="menu1" <? ?> class="left"><a href="uslugi.php"></a></div>

CSS:

  #menu1 a {
    display: block;
    height: 20px;
    width: 59px;
    background: url("images/menu1.jpg") 0 0 no-repeat;
  }
  #menu1 a:hover {
    background-position: -59px 0;
  }
  #menu1 a:active {
    background-position: -118px 0;
  }
  #menu1_1 a {
    display: block;
    height: 20px;
    width: 59px;
    background: url("images/menu1.jpg") -118px 0 no-repeat;
  }

a:active можно вообще удалить (ну зачем вам обособлять момент когда пользователь уже нажал на кнопку мыши, но еще не отпустил ее?)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования