Bootstrap4下拉菜单填充输入组

2024-01-09

我想解决一个非常简单的引导问题。

根据指南(https://getbootstrap.com/docs/4.0/components/dropdowns/ https://getbootstrap.com/docs/4.0/components/dropdowns/) the .dropdown-menu类和下拉切换必须包含在.dropdown,或另一个声明的元素position: relative;.

但到目前为止,我只能让它工作,如果我把.dropdown-menu与我的开关处于同一水平。因此,我只能在右上角找到一个小的下拉菜单,如下所示。

但是,如果我要移动整个.dropdown-menudiv 块向下两级(在.input-group .dropdowndiv 块),我会达到这样的效果......

...这正是我想要的,但是,在控制台上,bootstrap/popper 会输出一个错误,告诉我Cannot read property 'setAttribute' of undefined,并且下拉菜单将不再缩回,这就是我陷入困境的地方。

我在底部包含了一个工作代码示例(第一张图片)供您尝试,请告诉我我使用的下拉类是否错误?

<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>
<div class="container">
  <div class="row">
    <div class="col-12">
      <div class="input-group dropdown">
        <input type="text" class="form-control" id="project_search" placeholder="search ...">
        <div class="input-group-append">
          <div class="btn-group">
            <button class="btn bg-primary text-white" type="button">Search</button>
            <button class="btn bg-primary text-white dropdown-toggle dropdown-toggle-split" id="searchAdvancedFilter" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
              <span class="caret"></span>
              <span class="sr-only">Toggle Dropdown</span>
            </button>
            <div class="dropdown-menu dropdown-menu-right w-100" aria-labelledby="searchAdvancedFilter">
              <h6 class="dropdown-header">Advanced Settings</h6>
              <div class="dropdown-divider"></div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

我已经找到了解决问题的方法,但后来我遇到了另一个问题,首先,这是代码。

<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>
<div class="container">
  <div class="row">
    <div class="col-12">
      <div class="input-group dropdown">
        <input type="text" class="form-control" id="project_search" placeholder="search ...">
        <button class="btn bg-primary text-white" type="button">Search</button>
        <button class="btn bg-primary text-white dropdown-toggle dropdown-toggle-split" id="searchAdvancedFilter" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
          <span class="caret"></span>
          <span class="sr-only">Toggle Dropdown</span>
        </button>
        <div class="dropdown-menu dropdown-menu-right w-100" aria-labelledby="searchAdvancedFilter">
          <h6 class="dropdown-header">Advanced Settings</h6>
          <div class="dropdown-divider"></div>
        </div>
      </div>
    </div>
  </div>
</div>

我所做的是我已经删除了两者.input-group-append分区和.btn-groupdiv,并有我的.dropdown-menu就在下面.dropdown,以及与菜单处于同一级别的切换。一切正常......期待.input-group / .btn-group现在的风格已经被破坏了。

如果不手动使用CSS类来覆盖它们,我的类结构与以前的版本是否有什么问题导致它无法实现我想要实现的功能?


使包含btn-group position:static像这样...

https://www.codeply.com/go/6kJ3E53PuF https://www.codeply.com/go/6kJ3E53PuF

<div class="container">
  <div class="row">
    <div class="col-12">
      <div class="input-group dropdown">
        <input type="text" class="form-control" id="project_search" placeholder="search ...">
        <div class="input-group-append">
          <div class="btn-group position-static">
            <button class="btn bg-primary text-white" type="button">Search</button>
            <button class="btn bg-primary text-white dropdown-toggle dropdown-toggle-split" id="searchAdvancedFilter" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
              <span class="caret"></span>
              <span class="sr-only">Toggle Dropdown</span>
            </button>
            <div class="dropdown-menu dropdown-menu-right w-100" aria-labelledby="searchAdvancedFilter">
              <h6 class="dropdown-header">Advanced Settings</h6>
              <div class="dropdown-divider"></div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

怎么运行的:

The dropdown-menu在 Bootstrap 4 中是position:absolute,并且默认情况下,btn-group is position:relative. A position:absolutea 内的元素position:relative容器的大小是相对于容器的。然而,当一个position:absolute元素被放置在 a 内position:static容器,它将不再相对于容器调整大小。这允许dropdown-menu调整全宽的大小dropdown. 请参阅绝对内部相对与静态的示例 https://www.codeply.com/go/ZAVmUrU5AS.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Bootstrap4下拉菜单填充输入组 的相关文章

  • 使用 jQuery 更改 CSS 类属性

    有没有办法使用 jQuery 更改 CSS 类的属性 而不是元素属性 这是一个实际的例子 我有一个 div 类red red background red 我想转班级red背景属性 而不是具有类的元素red分配的背景 如果我用 jQuery
  • 如何检测被覆盖的 CSS 属性?

    I can get all css properties for an element with document stylesheets but some of those are not active because those pro
  • CSS 边框底部的曲线

    我需要 CSS 中的这个图像 并且在这个边框内需要一个背景图像 我努力了 border radius 0 0 50 50 webkit border radius 0 0 50 50 但没有得到所需的形状 任何帮助 将不胜感激 边界半径 您
  • Bootstrap 标签栏平滑移动导航按钮

    我有一个用于切换块的普通引导选项卡面板 在导航中切换块时 活动选项卡会突出显示 但现在 当我单击活动选项卡的背景时 它会立即发生变化 是否可以使切换选项卡时背景不会立即改变 而是根据需要哪个选项卡而平滑地左右移动 这可以用以下方法完成吗cs
  • JavaFX使节点覆盖父节点边框颜色

    我有一个如下所示的节点 仅使用 css 我希望标签覆盖其父边框颜色 因此标签下方的边框颜色部分变得不可见 我用来制作这个边框的CSS代码 fx border color black fx border width 3 fx border r
  • Discord.py 嵌入中禁用按钮/冻结按钮

    I m trying to make a replica of this bot in which when I press any of the buttons below it shows a dropdown menu and you
  • 使用溢出支持定位粘性填充材料[重复]

    这个问题在这里已经有答案了 我在用position sticky在我的应用程序中 在使用overflow属性来显示滚动条 我已经寻找了一个确实支持这种情况的polyfill 但到目前为止没有任何运气 有谁知道这样的polyfill shim
  • 如何获得 calc() 函数的无单位结果

    我正在使用此计算来获取网页中的流体行高 line height calc 1 42em 1 55 1 42 100vw 300px 1080 300 数学是工作属性 除非我改变font size特定部分 因为line height应使用无单
  • 使用 CSS Grid,从任何地方滚动 div(不使用 jQuery 插件)

    div 怎样才能 scroll content https jsfiddle net blehmanade x1k3rhj7 33 可以从页面上的任何位置滚动吗 现在 scroll content仅当鼠标位于其上方时才可滚动 但是 当鼠标位
  • 如何使用 JavaScript 检测 CSS 变量支持?

    最新版本的 Firefox 支持CSS 变量 http www w3 org TR css variables 但 Chrome IE 和许多其他浏览器没有 应该可以访问 DOM 节点或编写一个小方法来返回浏览器是否支持此功能 但我还没有找
  • 简单的html css块结构,不能对内容div使用-headerHeight底部边距来避免滚动条吗?

    以下是我的简单 html css 结构
  • css 适用于 Firefox/Chrome,但不适用于 IE

    我有这个 HTML 和 css 在 chrome firefox 中工作正常 但在 IE 上 标题布局超出了位置 并且悬停时未显示子菜单 您能帮忙吗
  • Flexbox 的行之间可以有一条线吗?

    我有一个水平导航 它有点长 需要重新排列以适应狭窄的显示 我使用 flexbox 使其重排成多行 但行数较多时 导航项之间的划分就不那么明显了 我尝试在顶部给它们一个边框 它有点有效 但当然 边框仅在各个导航选项上可见 而不是在所有 Fle
  • 自动调整Google网站嵌入代码的高度(html)

    我正在使用 Google 协作平台嵌入 HTML 代码 将代码粘贴到 从网络嵌入 窗口中 输出的长度是可变的 我希望有一种方法可以动态调整父级的高度iframeGoogle 协作平台用于托管我的 HTML 我知道我可以使用 Google 协
  • 有没有办法将变量从 javascript 导入到 sass 或反之亦然?

    我正在制作一个依赖于块概念的 CSS 网格系统 所以我有一个基本文件 例如 max columns 4 block width 220px block height 150px block margin 10px 它被 mixin 使用 m
  • 如何在CSS中制作一个带有边框的可调整大小的心形

    我想要制作一个心形 用户可以将其大小调整为任意宽度和高度 并且边框为 1 像素 我尝试了用纯 CSS 制作的心形 https stackoverflow com a 17386187 1404447 https stackoverflow
  • html css 下拉菜单

    这是我第一次在 Stack Overflow 上发帖 我不熟悉论坛发帖规定 所以请让我知道我做错了什么 我在论坛中研究过这个问题 但我所遇到的一切都没有给我明确的答案 我试图从 新闻 元素创建一个下拉菜单 但在运行代码时我从未得到任何可见的
  • 如何使用 vanilla JS 实现可维护的反应式 UI

    今天我遇到了一个问题 可以通过使用像 Vue 这样的反应式和状态管理框架来轻松解决 遗憾的是 无法使用它 以下 简化 情况 链接到代码笔 https codepen io theiaz pen BazErKV 我们有一个服务器渲染的页面 其
  • 如何强制外部 div 扩展到内部 div 的高度?

    我有 ajax 到的数据 div class content 我希望外部 div 扩展到内部 div 的高度 我不知道该怎么做 HTML div class outer div class inner div class content S
  • 在 HTML5 iOS 7 / iOS 8 中显示十进制键盘

    经过几个小时的搜索后 我只是有一个简单的问题 是否有可能在网络浏览器输入字段中显示小数键盘 input type number 只显示数字 但我需要在左下角使用逗号或点 我尝试过任何事情 pattern step等等 但没有显示十进制键盘

随机推荐

  • 使用 GPUImage 实时过滤视图

    我正在尝试使用 GPUImage 来过滤视图 因为它以一种 iOS 7 样式覆盖更新 为此 我在 NSTimer 上运行以下代码 但是我的 NSLog 显示 self backgroundUIImage imageFromCurrently
  • ListView BaseAdapter 中的 EditText 奇怪行为

    我有一个 ListView 使用填充BaseAdapter 在列表视图项中有一个数字 EditText
  • Angular 2:{{object}} 有效,{{object.child}} 抛出错误

    使用 Angular v1 已有一段时间了 自从 Angular v2 推出 Beta 版以来 我一直在研究它 现在我已经有了这段代码 但无法让它工作 真的不知道为什么 不知何故 当我打印时 profileUser json 一切正常 pr
  • 将 C++ 库与 Objective-C 应用程序链接和使用

    我正在编写一个图形应用程序 使用 Objective C 作为前端 使用 C 进行图形处理和网络通信 我在苹果网站上四处阅读 寻找一种方法来链接 dylib or so将我的 C 代码添加到我的 Xcode 项目中 但似乎没有任何效果 我能
  • 有时 GET 返回 304 而不是 200

    我正在使用 Node js 和 mongodb 我似乎有时会收到 200 有时会收到未修改的 304 router get add to bag id req res next gt req session bag push req par
  • Java JTable 更新行

    我正在创建一个像这样的 JTable String colName new String ID Country Name Page titel Page URL Time Object products new Object 123 USA
  • 为什么 PhoneGap 总是显示默认的启动画面图像?

    我现在正在测试一个示例 iOS 应用程序 尽管我在 Xcode 项目目标屏幕的 摘要 选项卡 中设置了所有新的启动图像 但 PhoneGap 3 0 仍然显示其默认启动屏幕 为什么 即使闪屏是一个插件并且现在默认情况下不包含在 PhoneG
  • 使用 WebFlux 从资源中读取和解析文件的反应方式?

    我想知道从资源中读取 解析和提供文件的正确方法是什么 目前 我做了这样的事情 fun getFile request ServerRequest Mono
  • Android HttpsUrlConnection eofException

    我有一个问题 当我尝试读取任何输入时 我的 HttpsURLConnection 将抛出 EOFException 该代码适用于某些网络调用 但不适用于其他网络调用 如果我尝试从连接中读取任何内容 则会失败并出现上述错误 Example u
  • RXJS中异步流是如何传输的?

    我试图了解流是如何通过 RXjs 中的管道传输的 我知道这不应该成为一个问题 因为这就是异步流的整个想法 但仍然有一些我想理解的事情 看这段代码 var source Rx Observable range 1 3 flatMapLates
  • 如何在 Visual Studio 中启用 CUDA 项目的单独编译

    我是 CUDA 新手 我正在尝试编写一个应用程序 在其中从另一个内核函数调用一个内核函数 但我收到错误 内核启动自device or global函数需要单独的编译模式 在构建应用程序时 这是我的完整代码 任何帮助 将不胜感激 includ
  • 手风琴与 for 循环一次仅打开一项

    我正在尝试向我的手风琴添加一个交互式 id 但是我的代码中出现了一些问题 手风琴会打开每个手风琴项目 我想要的只是在单击它时能够一次打开一个手风琴项目 for study in studies div class accordion div
  • 什么是 Swift.AnyClass?

    我正在调查UITableView类 我发现 open func register cellClass Swift AnyClass forCellReuseIdentifier identifier String Reading here
  • 解析和检查 Haskell 代码的库?

    hackage中是否有任何库可以解析haskell代码并检查它是否是有效代码 我愿意尝试一下进化模型 我想检查生成的代码字符串是否可以编译 而无需将它们写入磁盘并运行编译器 理想情况下 如果也能够在字符串中运行代码就好了 但只检查代码的有效
  • 一起使用 ORDER BY 和 GROUP BY

    我的表如下所示 我使用的是 MySQL m id v id timestamp 6 1 1333635317 34 1 1333635323 34 1 1333635336 6 1 1333635343 6 1 1333635349 我的目
  • 如何在flutter中开启设备GPS?

    通过使用 Dart 的 simple permissions 和 location 包 它只需要请求用户许可允许或拒绝应用程序使用设备位置来在 Google 地图上显示用户的当前位置 当我在设备上手动打开 GPS 时 我能够获取当前位置 但
  • 如何修复 phpMyAdmin 中的 WordPress MySQL 表?

    背景故事 我在 Mac 上使用 MAMP 设置本地开发服务器和数据库来创建 WordPress 网站 一切都很顺利 昨天 MySQL服务器没有启动 所以我采纳了StackOverflow上答案的建议 从mysql56文件夹中删除了ib lo
  • 在 PyQt4 中动态更改 QLabel 文本

    我的问题是 如何更改标签中的文本 标签位于布局内 但是setText 似乎不起作用 也许我做得不对 这是我的代码 这是主窗口 GUI Qt Designer 给出的 class Ui dashboard QtGui QMainWindow
  • Telerik RadGrid - 如何默认为编辑模式?

    我想让 RadGrid 的项目在页面加载时可编辑 我在这里尝试了两种方法http www telerik com help aspnet grid grddefaulteditmodeforgriditemsoninitialload ht
  • Bootstrap4下拉菜单填充输入组

    我想解决一个非常简单的引导问题 根据指南 https getbootstrap com docs 4 0 components dropdowns https getbootstrap com docs 4 0 components dro