我正在使用Wordpress菜单,我有经典菜单和项目的子菜单。当我悬停一些有孩子的项目时,子菜单会显示。问题是当我有一些当前页面时,li
类是current-submenu-item
并且在项目底部有箭头。当我将另一个具有子菜单(子项)的项目悬停时,我想在当前项目底部消失该箭头,当我取消它时,箭头将再次显示。
当前项目的类是:
li.current-submenu-item a:after {
position: absolute;
bottom: -25px;
left: 50%;
margin-left: -10px;
width: 20px;
content: url("http://elvis.zitnikcreative.cz/wp-content/themes/elvis_theme/img/menu_aktivni_sipka.png");
}
我试过这样的事情:
li.menu-item-has-children:hover + .li.current-submenu-item a:after {
content:"";
}
但没有结果。我怎么能只使用CSS呢?
答案 0 :(得分:5)
由于邻接选择器+
(与通用邻接选择器~
完全相同)仅适用于 next 兄弟,因此您需要通过{{1}控制此行为您的父级:hover
的状态,例如
ul
所以当您ul:hover li.current-submenu-item a:after {
content:"";
}
ul:hover li.current-submenu-item:hover a:after {
content:url("http://.../menu_aktivni_sipka.png");
}
菜单然后隐藏箭头,除非您还在徘徊:hover
项目
示例:http://jsfiddle.net/fozuu6hL/1/
作为旁注,您的示例只有在您悬停第一个.current-submenu-item
时(如上所述)才有效,但您需要删除list-item
前面的额外.
。< / p>