html - <div> 下拉菜单自定义

标签 html css drop-down-menu bootstrap-4

我的任务是获取这样的元素:

Goal to be achieved

导航项内有一个下拉菜单,菜单上有一个顶部居中的三 Angular 形,下拉菜单位于中心。

这是我目前的尝试:FIDDLE: Right dropdown design

我已将下拉菜单放在父 div 的中心,但我仍然无法获得所需的结果:

<强>1。使下拉菜单位于导航上方,而不是在即将到来的导航内。

<强>2。使三 Angular 形位于尚未对齐的下拉菜单正上方,背景为白色,边框颜色与下拉菜单相同

nav.navbar {
  padding: 1.1rem 1rem;
  background-color: #ffffff;
  box-shadow: 0 5px 5px #f1f1f1
}

.custom-button {
  height: 34px;
  width: 34px;
  font-size: 14px;
  border-radius: 50%;
  color: rgb(162, 197, 252);
  border: 1px solid rgb(162, 197, 252);
  background-color: Transparent;
}

.dropdown:hover .dropdown-menu {
  display: block;
  margin: 0 auto;
}

.dropdown {
  text-align: center
}

.dropdown-menu {
  min-width: 140px;
  min-height: 140px;
  position: absolute;
}

.dropdown a {
  color: rgb(192, 192, 192);
  font-size: 12px
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
<nav class="navbar navbar-toggleable-md">
  <div class="container">
    <a class="navbar-brand" href="#">Testing</a>
    <ul class="navbar-nav mr-auto"></ul>
    <ul class="navbar-nav" *ngIf="userService.token()">
      <li class="nav-item">
        <div class="dropdown">
          <button class="custom-button">NL</button>
          <div class="dropdown-menu">
            <a class="dropdown-item" href="#">Classes</a>
            <div class="dropdown-divider"></div>
            <a class="dropdown-item" href="#">Profile</a>
            <a class="dropdown-item" href="#">Settings</a>
            <a class="dropdown-item" href="#">Logout</a>
          </div>
        </div>
      </li>
    </ul>
  </div>
</nav>

最佳答案

如果你想在悬停时显示你的下拉菜单,你需要用 css 做一些修复..

使用变换使下拉菜单居中。根据 bootstrap4 navbar dropdown documentation,您还为下拉菜单使用了错误的标记..

引用链接:Bootstrap4 Navbar Dropdown

我已将其更改为更新的 fiddle 。

Updated Fiddle

关于html - <div> 下拉菜单自定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48418646/

相关文章:

jquery - 具有多个选择的语义 ui 下拉菜单在选择一个选项后不清除文本

css - 将 onHover 样式应用于 MuiButton 中的元素

php - 使用基本身份验证参数将 GET 请求发送到 HTTPS

asp.net - 从数据库填充 HTML 正文背景值

html - Bootstrap 按钮在面板标题内折叠

css - 下拉菜单在 IE6 和 IE7 中不起作用,在 Firefox 中工作正常

php - 从数据库中加载值以根据上一个下拉菜单中的选择创建下拉菜单

CSS 级联优先级

javascript - 如何在当前视口(viewport)中找到表格的边界(终点)?

php - Laravel 从 Controller 文件中的集合创建数组