2015-09-23 1 views
0

Я использую меню суперфишей, и я хочу, чтобы цвет родительского меню был черным при перемещении мыши над подменю. В настоящее время, когда я перемещаю мышь над подменю, цвет родительского меню становится таким же, как и фон. Однако я хочу, чтобы цвет шрифта был черным, а не белым. Как я могу это достичь. Пожалуйста, помогите мне. Заранее спасибо.Хотите сохранить цвет шрифта меню черным на подменю mouseover

вот мой HTML код:

<div id="mainmenu"> 
    <ul class="sf-menu"> 
    <li><a href="#"><span>Home</span></a></li> 
    <li><a href="#"><span>About Us</span></a> 
     <ul> 
     <li><a href="#"><span>About 1</span></a></li> 
     <li><a href="#"><span>About 2</span></a></li> 
     </ul> 
    </li> 
    <li><a href="#"><span>Portfolio</span></a> 
     <ul> 
     <li><a href="#"><span>All Projects</span></a></li> 
     <li><a href="#"><span>Single Type #1</span></a></li> 
     <li><a href="#"><span>Single Type #2</span></a></li> 
     </ul> 
    </li> 
    <li><a href="#"><span>Services</span></a> 
     <ul> 
     <li><a href="#"><span>Services 1</span></a></li> 
     <li><a href="#"><span>Services 2</span></a></li> 
     </ul> 
    </li> 
    <li><a href="#"><span>News</span></a></li> 
    <li><a href="#"><span>Contact</span></a></li> 
    </ul> 
</div> 

код CSS файл

/*** ESSENTIAL STYLES ***/ 
    .sf-menu, .sf-menu * { 
     margin: 0; 
     padding: 0; 
     list-style: none; 
    } 
    .sf-menu li { 
     position: relative; 
    } 
    .sf-menu ul { 
     position: absolute; 
     display: none; 
     top: 100%; 
     left: 0; 
     z-index: 99; 
    } 
    .sf-menu > li { 
     float: left; 
    } 
    .sf-menu li:hover > ul, 
    .sf-menu li.sfHover > ul { 
     display: block; 
    } 

    .sf-menu a { 
     display: block; 
     position: relative; 
    } 
    .sf-menu ul ul { 
     top: 0; 
     left: 100%; 
    } 


    /*** DEMO SKIN ***/ 
    .sf-menu { 
     float: left; 
    } 
    .sf-menu ul { 
     box-shadow: 2px 2px 6px rgba(0,0,0,.2); 
     min-width: 12em; /* allow long menu items to determine submenu width */ 
     *width: 12em; /* no auto sub width for IE7, see white-space comment below */ 
    } 
    .sf-menu > li > a { 
     color: #fff; 
     font-size: 14px; 
     text-transform: uppercase; 
     font-weight: 700; 
     -webkit-font-smoothing: antialiased; 
     display: block; 
     margin: 0; 
     line-height: 70px; 
     padding: 0 40px; 
    } 
    .sf-menu a { 
     text-decoration: none; 
     zoom: 1; /* IE7 */ 
    } 
    .sf-menu a { 
     color: #fff; 
    } 
    .sf-menu ul { 
     position: absolute; 
     min-width: 250px; 
     background: #fff; 
     z-index: 1000; 
     -webkit-box-shadow: 2px 2px 5px 0px rgba(50, 50, 50, 0.2); 
     -moz-box-shadow: 2px 2px 5px 0px rgba(50, 50, 50, 0.2); 
     box-shadow:   2px 2px 5px 0px rgba(50, 50, 50, 0.2); 
     padding: 30px 0 30px 30px; 
    } 
    .sf-menu li { 
     white-space: nowrap; /* no need for Supersubs plugin */ 
     *white-space: normal; /* ...unless you support IE7 (let it wrap) */ 
     -webkit-transition: background .2s; 
     transition: background .2s; 
    } 
    .sf-menu ul li { 
     background: #fff; 
     color: #888; 
    } 
    .sf-menu ul li a { 
     color: #888; 
     text-transform: uppercase; 
     font-size: 12px; 
     padding: 15px 20px; 
     display: block; 
     font-weight: 600; 
    } 
    .sf-menu ul ul li { 
     background: #fff; 
    } 
    .sf-menu li:hover, 
    .sf-menu li.sfHover { 
     background: #fff; 
     color:#222; 
     /* only transition out, not in */ 
     -webkit-transition: none; 
     transition: none; 
    } 
    /*** arrows (for all except IE7) **/ 
    .sf-arrows .sf-with-ul { 
     padding-right: 2.5em; 
     *padding-right: 1em; /* no CSS arrows for IE7 (lack pseudo-elements) */ 
    } 
    /* styling for both css and generated arrows */ 
    .sf-arrows .sf-with-ul:after { 
     content: ''; 
     position: absolute; 
     top: 50%; 
     right: 1em; 
     margin-top: -3px; 
     height: 0; 
     width: 0; 
     /* order of following 3 rules important for fallbacks to work */ 
     border: 5px solid transparent; 
     border-top-color: #dFeEFF; /* edit this to suit design (no rgba in IE8) */ 
     border-top-color: rgba(255,255,255,.5); 
    } 
    .sf-arrows > li > .sf-with-ul:focus:after, 
    .sf-arrows > li:hover > .sf-with-ul:after, 
    .sf-arrows > .sfHover > .sf-with-ul:after { 
     border-top-color: white; /* IE8 fallback colour */ 
    } 
    /* styling for right-facing arrows */ 
    .sf-arrows ul .sf-with-ul:after { 
     margin-top: -5px; 
     margin-right: -3px; 
     border-color: transparent; 
     border-left-color: #dFeEFF; /* edit this to suit design (no rgba in IE8) */ 
     border-left-color: rgba(255,255,255,.5); 
    } 
    .sf-arrows ul li > .sf-with-ul:focus:after, 
    .sf-arrows ul li:hover > .sf-with-ul:after, 
    .sf-arrows ul .sfHover > .sf-with-ul:after { 
     border-left-color: white; 
    } 
    /*** custom css ***/ 
    .sf-menu li.selected, 
    .sf-menu li.current-cat, 
    .sf-menu li.current-cat-parent, 
    .sf-menu li.current_page_item, 
    .sf-menu li.current_page_parent, 
    .sf-menu li.current_page_ancestor { 
     background:#fff; 
     color:#222; 
    } 
    .sf-menu li.current_page_item a { 
     color:#222; 
    } 
+0

Можете ли вы поделиться меню HTML-разметку также? – oliverpool

ответ

1

Необходимо включить якорь после наведения.

Я заметил рядом с разделом в вашем коде, после этого CSS .sf-menu li:hover a, .sf-menu li.sfHover a {}

body {background: grey;} 
 

 
/*** ESSENTIAL STYLES ***/ 
 
    .sf-menu, .sf-menu * { 
 
     margin: 0; 
 
     padding: 0; 
 
     list-style: none; 
 
    } 
 
    .sf-menu li { 
 
     position: relative; 
 
    } 
 

 
    .sf-menu ul { 
 
     position: absolute; 
 
     display: none; 
 
     top: 100%; 
 
     left: 0; 
 
     z-index: 99; 
 
    } 
 
    .sf-menu > li { 
 
     float: left; 
 
    } 
 
    .sf-menu li:hover > ul, 
 
    .sf-menu li.sfHover > ul { 
 
     display: block; 
 
    } 
 

 
    .sf-menu a { 
 
     display: block; 
 
     position: relative; 
 
    } 
 
    .sf-menu ul ul { 
 
     top: 0; 
 
     left: 100%; 
 
    } 
 

 

 
    /*** DEMO SKIN ***/ 
 
    .sf-menu { 
 
     float: left; 
 
    } 
 
    .sf-menu ul { 
 
     box-shadow: 2px 2px 6px rgba(0,0,0,.2); 
 
     min-width: 12em; /* allow long menu items to determine submenu width */ 
 
     *width: 12em; /* no auto sub width for IE7, see white-space comment below */ 
 
    } 
 
    .sf-menu > li > a { 
 
     color: #fff; 
 
     font-size: 14px; 
 
     text-transform: uppercase; 
 
     font-weight: 700; 
 
     -webkit-font-smoothing: antialiased; 
 
     display: block; 
 
     margin: 0; 
 
     line-height: 70px; 
 
     padding: 0 40px; 
 
    } 
 
    .sf-menu a { 
 
     text-decoration: none; 
 
     zoom: 1; /* IE7 */ 
 
    } 
 
    .sf-menu a { 
 
     color: #fff; 
 
    } 
 
    .sf-menu ul { 
 
     position: absolute; 
 
     min-width: 250px; 
 
     background: #fff; 
 
     z-index: 1000; 
 
     -webkit-box-shadow: 2px 2px 5px 0px rgba(50, 50, 50, 0.2); 
 
     -moz-box-shadow: 2px 2px 5px 0px rgba(50, 50, 50, 0.2); 
 
     box-shadow:   2px 2px 5px 0px rgba(50, 50, 50, 0.2); 
 
     padding: 30px 0 30px 30px; 
 
    } 
 
    .sf-menu li { 
 
     white-space: nowrap; /* no need for Supersubs plugin */ 
 
     *white-space: normal; /* ...unless you support IE7 (let it wrap) */ 
 
     -webkit-transition: background .2s; 
 
     transition: background .2s; 
 
    } 
 
    .sf-menu ul li { 
 
     background: #fff; 
 
     color: #888; 
 
    } 
 
    .sf-menu ul li a { 
 
     color: #888; 
 
     text-transform: uppercase; 
 
     font-size: 12px; 
 
     padding: 15px 20px; 
 
     display: block; 
 
     font-weight: 600; 
 
    } 
 
    .sf-menu ul ul li { 
 
     background: #fff; 
 
    } 
 
    .sf-menu li:hover a, 
 
    .sf-menu li.sfHover a { /* ADDED YOUR ANCHOR TO THIS SELECTOR */ 
 
     background: #fff; 
 
     color:#222; 
 
     /* only transition out, not in */ 
 
     -webkit-transition: none; 
 
     transition: none; 
 
    } 
 
    /*** arrows (for all except IE7) **/ 
 
    .sf-arrows .sf-with-ul { 
 
     padding-right: 2.5em; 
 
     *padding-right: 1em; /* no CSS arrows for IE7 (lack pseudo-elements) */ 
 
    } 
 
    /* styling for both css and generated arrows */ 
 
    .sf-arrows .sf-with-ul:after { 
 
     content: ''; 
 
     position: absolute; 
 
     top: 50%; 
 
     right: 1em; 
 
     margin-top: -3px; 
 
     height: 0; 
 
     width: 0; 
 
     /* order of following 3 rules important for fallbacks to work */ 
 
     border: 5px solid transparent; 
 
     border-top-color: #dFeEFF; /* edit this to suit design (no rgba in IE8) */ 
 
     border-top-color: rgba(255,255,255,.5); 
 
    } 
 
    .sf-arrows > li > .sf-with-ul:focus:after, 
 
    .sf-arrows > li:hover > .sf-with-ul:after, 
 
    .sf-arrows > .sfHover > .sf-with-ul:after { 
 
     border-top-color: white; /* IE8 fallback colour */ 
 
    } 
 
    /* styling for right-facing arrows */ 
 
    .sf-arrows ul .sf-with-ul:after { 
 
     margin-top: -5px; 
 
     margin-right: -3px; 
 
     border-color: transparent; 
 
     border-left-color: #dFeEFF; /* edit this to suit design (no rgba in IE8) */ 
 
     border-left-color: rgba(255,255,255,.5); 
 
    } 
 
    .sf-arrows ul li > .sf-with-ul:focus:after, 
 
    .sf-arrows ul li:hover > .sf-with-ul:after, 
 
    .sf-arrows ul .sfHover > .sf-with-ul:after { 
 
     border-left-color: white; 
 
    } 
 
    /*** custom css ***/ 
 
    .sf-menu li.selected, 
 
    .sf-menu li.current-cat, 
 
    .sf-menu li.current-cat-parent, 
 
    .sf-menu li.current_page_item, 
 
    .sf-menu li.current_page_parent, 
 
    .sf-menu li.current_page_ancestor { 
 
     background:#fff; 
 
     color:#222; 
 
    } 
 
    .sf-menu li.current_page_item a { 
 
     color:#222; 
 
    }
<div id="mainmenu"> 
 
    <ul class="sf-menu"> 
 
    <li><a href="#"><span>Home</span></a></li> 
 
    <li><a href="#"><span>About Us</span></a> 
 
     <ul> 
 
     <li><a href="#"><span>About 1</span></a></li> 
 
     <li><a href="#"><span>About 2</span></a></li> 
 
     </ul> 
 
    </li> 
 
    <li><a href="#"><span>Portfolio</span></a> 
 
     <ul> 
 
     <li><a href="#"><span>All Projects</span></a></li> 
 
     <li><a href="#"><span>Single Type #1</span></a></li> 
 
     <li><a href="#"><span>Single Type #2</span></a></li> 
 
     </ul> 
 
    </li> 
 
    <li><a href="#"><span>Services</span></a> 
 
     <ul> 
 
     <li><a href="#"><span>Services 1</span></a></li> 
 
     <li><a href="#"><span>Services 2</span></a></li> 
 
     </ul> 
 
    </li> 
 
    <li><a href="#"><span>News</span></a></li> 
 
    <li><a href="#"><span>Contact</span></a></li> 
 
    </ul> 
 
</div>

+0

Спасибо большое. Ваш код работает .. , –

0

Является ли это то, что вы хотите?

.sf-menu > li a:hover{ 
    color: red; 
} 
+0

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

+0

@NitinJohnson I update code :) – Stefan

0

Изменить код ниже

.sf-menu > li > a {color:#000} 
Смежные вопросы