首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >向左移动菜单下拉菜单

向左移动菜单下拉菜单
EN

Stack Overflow用户
提问于 2013-04-10 16:18:49
回答 3查看 7.4K关注 0票数 1

我有顶部的菜单与下拉导航(子菜单)和下拉来自主菜单右侧。

css:

代码语言:javascript
运行
复制
ul.dropdown ul {
width: 220px;
visibility: hidden;
position: absolute;
top: 100%;
left: 0;
}

如果我悬停在最后一个菜单上,下拉菜单会有水平滚动,因为右侧没有显示菜单的空间,如何才能将最后一个菜单的位置改为左侧?

请帮帮忙

EN

回答 3

Stack Overflow用户

发布于 2013-04-10 16:23:54

代码语言:javascript
运行
复制
ul.dropdown li {
   position: relative;
}

ul.dropdown li ul {
   position: absolute;
   top: 20px; /* assign the correct value of the top line height */
   left: 0px;
}

这应该有效^^当使用position:relativeposition:absolute;赋值给元素的子元素时,绝对位置是相对于其父元素而不是相对于主体的。

我的错,不知何故用“最后一个孩子”把最后一部分看得太重了。

这可能是可行的:

代码语言:javascript
运行
复制
ul.dropdown li:last-of-type ul {
   position:absolute;
   left:0px;
}
票数 2
EN

Stack Overflow用户

发布于 2013-04-10 16:25:24

你可以使用jquery来解决这个问题,试试这个

代码语言:javascript
运行
复制
$(function(){
    $(".dropdown:last").css("left","-120px");
})
票数 1
EN

Stack Overflow用户

发布于 2013-04-10 16:34:22

应该使用last-child选择器而不是left来设置right属性

代码语言:javascript
运行
复制
.dropdown > li:last-child:hover ul {
    left: auto;
    right: 0;
}

您没有提供小提琴,所以我设置了这个简单的示例来演示原理:http://jsfiddle.net/6eBd2/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15920499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档