2013-10-09 4 views
0

Моя проблема в том, когда я наводил указатель на заголовок fois, его текст не меняется на белый цвет, я не знаю, где я ошибаюсь. Или что включить include.please help me ........
другая проблема, когда язычок фуа активен цвет текста отображаются в виде белогоизменить цвет конкретного заголовка на мыши над

<!DOCTYPE html> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <title></title> 
     <!-- <link href="css.css" rel="stylesheet" />--> 
     <script type="text/javascript" src="jquery-1.7.1.min.js"></script> 
     <script type="text/javascript" src="accord.js"></script> 
     <style> 
      .wrap { 
       margin-left: 0px; 
       margin-top: 0px; 
       width: 100px; 
      } 

      .accordion1 { 
       width: 178px; 
       margin: 0px; 
       padding: 0px; 
       list-style: none; 
       border: 1px solid #ddd; 
      } 

       .accordion1 h2 { 
        font-size: 12px; 
        font-weight: bold; 
        font-family: Arial, Helvetica, sans-serif; 
        margin: 0px; 
        text-decoration: none; 
        padding: .25em .25em .25em 2em; 
        color: #333; 
        background: url('compo_images/gradient_v_gray.gif') repeat-x; 
        background: url("./compo_images/arrow_exp_s.gif") 1em .75em no-repeat; 
        border-bottom: 1px solid #ddd; 
        cursor: pointer; 
       } 

        .accordion1 h2:hover { 
         background: url('compo_images/gradient_v_orange.gif') repeat-x; 
         color: white; 
        } 

       .accordion1 li div.content { 
        padding: 3px; 
        background: #fcfbfb; 
        border-bottom: 1px solid #ddd; 
        /*border: 1px solid #ddd;*/ 
       } 

       .accordion1 li:hover h2 { 
        color: white; 
        background-image: url("./compo_images/arrow_exp_n.gif"); 
        background: url('compo_images/gradient_v_orange.gif') repeat-x; 
       } 

      .accord > li { 
       padding: 0; 
       list-style-type: none; 
      } 

       .accord > li > a { 
        text-decoration: none; 
        font-family: Arial, Helvetica, sans-serif; 
        font-size: 12px; 
        padding-left: 12px; 
        color: #5f5c5c; 
        background: url("./compo_images/arrow_pointer_se.gif") 0.002em no-repeat; 
       } 

       .accord > li > ul > li > a { 
        text-decoration: none; 
        color: #5f5c5c; 
        font-family: Arial, Helvetica, sans-serif; 
        font-size: 11px; 
        background: url("./compo_images/arrow_dirmini_orange_e.gif") 0.35em no-repeat; 
        padding-left: 17px; 
       } 

       .accord > li > ul { 
        list-style-type: none; 
        text-align: left; 
        margin: 0; 
        padding: 1px; 
       } 

      .accord { 
       text-decoration: none; 
       padding-left: 5px; 
      } 

       .accord > li > a:hover { 
        color: #f8b106; 
       } 

       .accord > li > ul > li > a:hover { 
        color: #f8b106; 
       } 

      .accordion1 > li > h2.active { 
       color: white; 
       background: url('compo_images/gradient_v_orange.gif') repeat-x; 
      } 

     </style> 
    </head> 

    <body> 
     <div class="wrap"> 

      <ul class="accordion1"> 
       <li> 
        <h2 id="first">CMT</h2> 
        <div class="content"> 
         <ul class="accord"> 
          <li> 
           <a href="#">main link1</a> 
           <ul> 
            <li><a href="#">Link One</a></li> 
            <li><a href="#">Link Two</a></li> 
            <li><a href="#">Link Three</a></li> 
            <li><a href="#">Link Four</a></li> 
            <li><a href="#">Link Five</a></li> 
           </ul> 
          </li> 

          <li> 
           <a href="#">main link2</a> 
           <ul> 
            <li><a href="#">Link One</a></li> 
            <li><a href="#">Link Two</a></li> 
            <li><a href="#">Link Three</a></li> 
            <li><a href="#">Link Four</a></li> 
            <li><a href="#">Link Five</a></li> 
           </ul> 
          </li> 
         </ul> 
        </div> 
       </li> 
       <li> 
        <h2 id="fois"><a href="#" style="text-decoration:none;color:black;">FOIS</a></h2> 

       </li> 
       <li> 
        <h2>ASP</h2> 
        <div class="content"> 
         <ul> 

         </ul> 

        </div> 
       </li> 
       <li> 
        <h2>PTT</h2> 
        <div class="content"> 
         content PTT 
        </div> 
       </li> 
      </ul> 
     </div> 
     <!-- wrap --> 
    </body> 
    </html> 

ACCORD файл

jQuery(function ($) { 
    $('.accord li').hover(function() { 
     $(this).find('ul').stop(true, true).slideDown() 
    }, function() { 
     $(this).find('ul').stop(true, true).slideUp() 
    }).find('ul').hide() 

    var $lis = $('.accordion1 > li'), $contents = $lis.children('.content').hide(); 
    var $h2s = $lis.children('h2').click(function() { 
     var $this = $(this), $t = $this.next(); 
     $contents.not($t).stop(true, true).slideUp(); 
     $this.toggleClass('active', !$t.is(':visible')); 
     $t.slideToggle(); 
     $h2s.not(this).removeClass('active'); 
    }) 
}) 

ответ

1

Вы объявляете color: black; с помощью inline CSS, который будет преодолено только если вы используете !important в таблице стилей.

Во-вторых вы должны предназначаться a элемент и не h2 потому a не наследуют цвет родительских элементов, если не указано что-то вроде a {color: inherit;}, который сделает все a элементы в вашем документе inherit родительского цвета, или быть конкретнее вы можете использовать .accordion1 li h2 a {color: inherit;}, если вы используете этот селектор, чем вы не должны предназначаться a еще вам нужно, как я поделился ниже ..

.accordion1 li:hover h2 a { 
    color: white !important; 
    background-image: url("./compo_images/arrow_exp_n.gif"); 
    background: url('compo_images/gradient_v_orange.gif') repeat-x; 
} 

Я хотел бы предложить вам удалить встроенный стиль вместо этого, и вы выиграли Не нужно использовать !important.

Demo

+0

ОК, теперь это работает. У меня есть другая проблема, когда эта вкладка активна, текст ссылки должен быть изменен на белый. я отредактировал сообщение и включил файл accord.js – user2841408

+0

@ user2841408, вам, возможно, стоит задать другой вопрос, если это связано с JS :) –

2

Потому что это обернуто в <a></a> теги и другие не завернуты в <a>

Demo

<li> 
    <h2 id="fois">FOIS</h2> // Your <h2> is wrapped in <a></a> here 
</li> 
+0

да, но я хочу, когда я мыши над Fois его текст меняется на белый – user2841408

+0

Да потому, что вы предоставили стили для того же и ваш вопрос говорит, что он не меняется цвет. Так чего же вы пытаетесь достичь? –

+0

, когда я нахожусь над заголовком fois, текст fois остается черным, а не white.i хочет его белого цвета – user2841408

0

Изменить

<h2 id="fois"><a href="#" style="text-decoration:none;color:black;">FOIS</a></h2> 

Для

<h2 id="fois"><a href="#">FOIS</a></h2> 

И изменить

.accordion1 li:hover h2 { 

К

.accordion1 li:hover h2, 
.accordion1 li:hover h2 a { 
0

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

Если удалить

color:black 

от якоря, и добавить:

color:black 

к:

.accordion1 h2 

Это должно сделать трюк.

0

Добавить Ниже класса в вашем стиле

#fois a:hover{ 
    color: white !important; 
    } 
+0

его только тогда, когда я нажимаю на ссылку, но я хочу, когда я наведите курсор на заголовок цвета текст меняется на белый – user2841408

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