html - 如何让 bootstrap btn-group 自然地分成两半

标签 html css twitter-bootstrap

我一直在避免为这个问题找到真正的解决方案,并且经常只是牺牲我最初的目标来解决这个问题。

我喜欢使用 Bootstrap .btn-group 类。它有很多不错的用途。不幸的是,它使居中和响应变得痛苦。假设我 build 了这个。

<div id="nav-bar" class="btn-group" role="group">
  <a class="nav-btn btn btn-default" >example 1</a>
  <a class="nav-btn btn btn-default" >example 2</a>
  <a class="nav-btn btn btn-default" >example 3</a>
  <a class="nav-btn btn btn-default" >example 4</a>
</div>

当屏幕变小时,整个栏可能放不下,在这种情况下,我需要两个导航栏,顶部的导航栏包含前两个 btns,底部的导航栏包含最后两个 btn。相反,它会在顶部显示 3 个 btns,在底部显示 1 个,直到屏幕小到足以强制它像我想要的那样变成 2 x 2。

关于可能是相关的注释,我不能在不指定左边距的情况下将 btn-groups 居中,这使得宽度可变的 btns 几乎不可能。我已经尝试了文本对齐的每种组合:中心和边距:0 auto 我可以,以及添加和应用各种父级、div 和 span,并应用这些属性。我不能使用 bootstrap 网格属性,因为它破坏了 .btn-group 类的功能。

看起来 HTML 的语义使我想要的东西变得不可能,至少在没有给特定屏幕尺寸的特定 HTML 文档的情况下是这样,但我一直都知道 CSS 能够解决任何视觉问题。如何让我的导航栏适本地响应屏幕尺寸?

最佳答案

Bootstrap 调整大小系统使用填充了“12 总和”规则的行容器类。使用类

col-xs-x; col-xm-x; col-md-x; col-lg-x

其中 x 是一个整数 1 <= x <= 12

此整数确定行内列的宽度,作为整体的一部分 - 总共 12 个部分。中间字符表示行将转换为列的大小(从 1x4 到 4x1),即调整自身大小以显示更窄。每个的屏幕尺寸在这里给出: http://getbootstrap.com/css/#grid

我建议您使用此行/列系统创建一个表格,一旦达到所需的屏幕尺寸,该表格就会从 1x4 移动到 2x2。这是一个骨架:

<div class='row'>                  1x4
    <div class='col-md-6'>              2x2
        anchor1
        anchor2
    </div>
    <div class='col-md-6'>
        anchor3
        anchor4
    </div>
</div>

这将使按钮组从 1x4 开始,然后一旦达到中等屏幕尺寸,就会转换为 2x2,中等只是任意选择

关于html - 如何让 bootstrap btn-group 自然地分成两半,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27352652/

相关文章:

javascript - 无法更改 SVG 元素的类名

javascript - php 或 javascript 文本文件分号数据库使用一条记录在悬停时显示另一条记录

html - CSS 表格宽度 100% 且 td 溢出隐藏且没有 td 宽度

javascript - 纯 Javascript 生成的 Bootstrap4 Collapsible 不会展开或折叠

html - 如何让连续的 nowrap 跨度包装为单独的元素?

windows - chrome 在重新加载网页时从缓存中加载

javascript - 从 JSON 文件中 knockout 绑定(bind)

html - 嵌套的 UL/LI 未显示

javascript - 具有变量和多个值的 jQuery .css() 函数

jquery - bootstrap 根据媒体设置 asp 网格宽度