html - margin-bottom 属性不起作用

标签 html css drop-down-menu

我有CSS代码:

.dropdown-menu {
  position:absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  background-color: #ffffff;
  border: 1px solid #cccccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 6px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}
.arrow {
position:absolute;
margin-bottom: 50px;
margin-left: 50px;
width: 0;
height: 0;
border-style: solid;
border-width: 0 5px 8.7px 5px;
border-color: transparent transparent #007bff transparent;
line-height: 0px;
_border-color: #000000 #000000 #007bff #000000;
_filter: progid:DXImageTransform.Microsoft.Chroma(color='#000000');
}

HTML代码:

       <ul class="dropdown-menu">
              <li class="arrow"></li>
              <li><a href="#">Credit History</a></li>
              <li><a href="#">Purchased Content</a></li>
              <li><a href="#">Access logs</a></li>
        </ul>

`

arrow 类中的 margin-bottom: 50px; 会将我的箭头向下移动。如果我放置 margin-top: 50px;,我的箭头仍会向下。我试图将该箭头放在下拉菜单之外。

谁能告诉我为什么我的箭头没有上去?非常感谢!

稍后编辑:我更新了问题。

fiddle here

最佳答案

你可能想要这样的东西

#menu_options {
position: absolute;
/*top: 100%;*/

}
.dropdown-menu {
  left: 0;
  z-index: 1000;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  background-color: #ffffff;
  border: 1px solid #cccccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 6px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}

.arrow {
  position:relative;
  top:3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5px 8.7px 5px;
  border-color: transparent transparent #007bff transparent;
  line-height: 0px;
  _border-color: #000000 #000000 #007bff #000000;
  _filter: progid: DXImageTransform.Microsoft.Chroma(color='#000000');
}
<div id='menu_options'>
<li class="arrow"></li>
<ul class="dropdown-menu">
  <li><a href="#">Credit History</a></li>
  <li class="divider"></li>
  <li><a href="#">Purchased Content</a></li>
  <li class="divider"></li>
  <li><a href="#">Access logs</a></li>
</ul>
</div>

关于html - margin-bottom 属性不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34569095/

相关文章:

CSS Flexbox 响应式布局和 % 宽度

html - 我有一个下拉菜单,但我的菜单不会下拉

html - 子菜单重叠主菜单项

javascript - Aloha Editor 禁用图像裁剪

html - 未对齐的 Twitter Follow 和 Facebook Like 按钮

html - 从 3 个元素 Bootstrap 输入组,当 textBox 是第一个时

css - 在 html5 语义标签周围包装一个 div?

html - 在 asp.net mvc 中获取禁用下拉列表的值

javascript - 停止输入文本中的 html

jquery - 如何避免在输入文本框中重复添加选中的值