我正在尝试实现像本网站这样的下拉菜单,我可以在其中将下拉菜单居中:
这是我的工作代码,它远非完美:
.row,
.grid-container {
border: 1px solid blue;
}
.menu>li>a {
line-height: 40px;
}
.menu>li>a:hover {
border-bottom: 1px solid red;
}
.menu ul li a {
line-height: normal;
width: 100%;
text-align: center;
}
.menu ul li:hover {
background-color: #eee;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/foundation/6.4.1/css/foundation.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/foundation/6.4.1/js/foundation.min.js"></script>
<div class="row">
<ul class="menu align-center dropdown" data-dropdown-menu>
<li>
<a href="#">One</a>
<ul class="menu vertical">
<li><a href="#">One One One One One</a></li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a></li>
</ul>
</li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a></li>
<li><a href="#">Four</a></li>
</ul>
</div>
<script>
$(document).foundation();
</script>
如您所见menu vertical
,没有居中 - 只有文本居中。我怎样才能让它在其父项下居中?
另外,如何删除旁边的下拉箭头one
?
或者我可以使用任何可定制的 CSS 插件来实现这个结果,而不是重新发明它,或者使用 Foundation(定制它是一个很大的挑战!)
在当前样式规则之后添加这个 after 将摆脱箭头(如果在样式块中的正确规则声明之后无法获得它,您可以使用一个重要的,但我建议反对它)
.dropdown.menu > li.is-dropdown-submenu-parent > a::after{
content: none;
}
并且该站点使用动态计算的元素上的左值将其居中放置,您可以通过这样的方式实现您想要的效果
.dropdown.menu > li.opens-right > .is-dropdown-submenu{
margin-left: -65px;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句