【发布时间】:2023-03-23 09:15:02
【问题描述】:
我正在使用 React 创建一个下拉菜单组件。我想知道将菜单元素直接定位在“.menu-trigger”按钮下方所需的 CSS,其右边框与其父级(“.menu-container”)右边框对齐。我希望这个 CSS 能够像这样定位任何合理大小的菜单元素。
我相信我想绝对定位“.menu”组件,相对于父元素“.menu-container”。
以下是 html 和 css 的精简版:
<body>
<div className="menu-container">
<button className="menu-trigger">
<span>Drop Down Menu</span>
</button>
<nav className="menu">
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
</nav>
</div>
</body>
<style>
.menu ul {
list-style: none;
}
.menu-container {
position: relative;
display: inline-block;
}
.menu {
position: absolute;
top: 100%;
}
</style>
**** 编辑****
使用 flexbox 解决方案:
.menu-container {
display: inline-flex;
flex-direction: column;
align-items: flex-end;
}
【问题讨论】:
-
正确地说,您的标题应为“将元素直接置于前一个兄弟元素之下并与父元素右对齐”。
标签: javascript html css reactjs