2012-06-14 2 views
1

У меня есть следующий код ниже для списка в мастер-страницеПочему CSS: активный по ссылке не делает выделение текущей ссылки на страницу?

<div id="header"> 
      <ul> 
       <li><a href="default.aspx">Home</a></li> 
       <li><a href="page1.aspx">Page1</a></li> 

      </ul> 
     </div>  ​ 

с CSS

#header a:hover { 
    color: #AA1111; 
    border-color: #AA1111; 
} 

#header a:active { 
    color: #AA1111; 
    border-color:#AA1111; 
} 

но ссылка не выделяет цветом, когда страница активируется.

+2

Оба набора имеют одинаковые цвета? –

+0

у вас есть цвет границы, у вас есть и граница? – Aristos

+0

первым, когда парения да, когда ссылка активна я не буду цвет пребывания на меню выбранного – Kyabroudi

ответ

2

:active не указывает, что ссылка будет подсвечена при активной текущей странице.

:active - состояние связи между щелчком мыши и мышью, выделенной по ссылке. Попробуйте прикоснуться к ссылке, чтобы убедиться сами.

Чтобы установить ссылку на текущую страницу в другом стиле, вам необходимо либо присвоить текущую ссылку на страницу другому классу, либо целевой класс в вашем CSS.

Если вы используете .NET, я рекомендую использовать различные адаптеры/элементы управления меню CSS, которые имеют возможность указывать текущий класс ссылок на страницу.

+0

хорошо я заменить свой код с этим

  • Home
  • с CSS \t #header а. выбранный { \t \t цвет: # AA1111; \t \t border-color: # AA1111; \t} тонкие добавить код Jquery $ (документ) .ready (функция() { $ ('Ли а'). Нажмите (функция() { $ ("# заголовок"). RemoveClass () $ (это) .addClass ('selected'); }); }); и все еще выделяйте только домашнюю страницу !! ты можешь исправить меня !! извините за мой язык я не носитель языка – Kyabroudi

    +0

    Вам нужен .removeClass ('selected') –

    0

    Я думаю, что вы путаете смысл псевдоселектора :active. Это правило css будет применяться, когда вы нажмете на ссылку. Но если эта ссылка приведет вас к новой странице, якорь больше не будет активен.

    Что вам нужно сделать, это добавить класс к якорю в зависимости от того, на какой странице вы находитесь. Итак, в default.aspx вы должны убедиться, что у вас есть <a class="active" href="default.aspx">Home</a>. Затем вам нужно будет изменить правило css на #header a.active.

    0

    , как вы можете настроить вашу страницу:

    #header li {} 
    #header li.active a {color: #AA1111; border-color:#AA1111;} 
    
    
    <div id="header"> 
         <ul> 
          <li class="active"><a href="default.aspx">Home</a></li> 
          <li><a href="page1.aspx">Page1</a></li> 
    
         </ul> 
    </div> 
    

    Вам нужно будет установить активный класс на li основе, на какой странице.

    Демо: http://jsfiddle.net/lucuma/HT4U4/

    Смежные вопросы