Html 带悬停的嵌套无序列表
我有这个(简化的)导航:Html 带悬停的嵌套无序列表,html,css,Html,Css,我有这个(简化的)导航: .ctmenu{ 显示:无; 浮动:对; } li:悬停>.ctmenu{ 显示:内联块; } CT菜单 CT菜单 试试这个: .ctmenu{display:none;} li a:hover+.ctmenu.ctmenu:hover{display:inline block;} C菜单1 C菜单2 试试这个: .ctmenu{display:none;} li a:hover+.ctmenu.ctmenu:hover{display
.ctmenu{
显示:无;
浮动:对;
}
li:悬停>.ctmenu{
显示:内联块;
}
-
CT菜单
-
CT菜单
试试这个:
.ctmenu{display:none;}
li a:hover+.ctmenu.ctmenu:hover{display:inline block;}
-
C菜单1
-
C菜单2
试试这个:
.ctmenu{display:none;}
li a:hover+.ctmenu.ctmenu:hover{display:inline block;}
-
C菜单1
-
C菜单2
试试这个:
.ctmenu{display:none}
li a:鼠标悬停+ctmenu,
.ctmenu:悬停{
显示:内联块;
}
-
演示1
演示2
演示3
演示4
-
演示1
演示2
演示3
演示4
试试这个:
.ctmenu{display:none}
li a:鼠标悬停+ctmenu,
.ctmenu:悬停{
显示:内联块;
}
-
演示1
演示2
演示3
演示4
-
演示1
演示2
演示3
演示4
如果HTML结构没有改变,您可以使用JavaScript来实现,因为CSS中没有父选择器
使用mouseover
、mouseout
和classList
,您可以执行以下操作:
var menu=document.querySelector(“.menu”);
var items=menu.querySelectorAll(“li”);
[]forEach.call(项、函数(项){
项目.添加的EventListener(“鼠标悬停”,功能(e){
e、 停止传播();
this.children[0].classList.add(“活动”);
});
项目.添加的监听器(“鼠标输出”,功能(e){
e、 停止传播();
this.children[0].classList.remove(“活动”);
});
})
.ctmenu{
显示:无;
浮动:对;
}
.主动{
显示:内联块;
}
-
CT菜单
-
CT菜单
如果HTML结构没有改变,您可以使用JavaScript来实现,因为CSS中没有父选择器
使用mouseover
、mouseout
和classList
,您可以执行以下操作:
var menu=document.querySelector(“.menu”);
var items=menu.querySelectorAll(“li”);
[]forEach.call(项、函数(项){
项目.添加的EventListener(“鼠标悬停”,功能(e){
e、 停止传播();
this.children[0].classList.add(“活动”);
});
项目.添加的监听器(“鼠标输出”,功能(e){
e、 停止传播();
this.children[0].classList.remove(“活动”);
});
})
.ctmenu{
显示:无;
浮动:对;
}
.主动{
显示:内联块;
}
-
CT菜单
-
CT菜单
您需要在LI标记后添加一个额外的div。请检查下面的示例
.ctmenu{
显示:无;
浮动:对;
}
.ct div:hover>.ctmenu{
显示:内联块;
}
-
CT菜单
-
CT菜单
您需要在LI标记后添加一个额外的div。请检查下面的示例
.ctmenu{
显示:无;
浮动:对;
}
.ct div:hover>.ctmenu{
显示:内联块;
}
-
CT菜单
-
CT菜单
.menu.sub li:hover>.ctmenu这将起作用菜单是动态的,并且比此处显示的级别更高,因此不起作用。另外,您的代码将与“主页”不匹配。@Pete只是好奇:flex如何在这里帮助我?@Pete好的,谢谢:).menu.sub li:hover>.ctmenu
这将起作用菜单是动态的,并且比此处显示的级别更高,因此这将不起作用。另外,你的代码将与“主页”不匹配。@Pete只是好奇:flex如何在这里帮助我?@Pete好的,谢谢:)这对不止一个.ctmenu元素在li内不起作用。这对不止一个.ctmenu元素在li内不起作用。这对不止一个.ctmenu元素在li内不起作用。这对不止一个.ctmenu元素在li内不起作用。因为这是一个CSS唯一的解决方案,这将是正确的答案。谢谢。:)因为这是一个CSS唯一的解决方案,这将是正确的答案。谢谢。:)