【问题标题】:Center horizontally div elements inside bootstrap? (text-center not working)在引导程序中水平居中 div 元素? (文本中心不起作用)
【发布时间】:2017-11-26 02:09:22
【问题描述】:

我遇到了问题,引导程序的文本中心类不起作用,就是这样。

我有一个包含多个列表和其他标签的 div,但是当我应用 text-center 类使这个中心在屏幕上它什么都不做时,这也适用于包含形状中的 div 的 div,这是我的代码:

<div class="col-md-12 options-bar text-center">
    <ul class="nav nav-pills">
        <li class="normal-li">Ordenar por: </li>
        <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
            Status <span class="caret"></span>
            </a>
            <ul class="dropdown-menu">
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li class="divider"></li>
                <li><a href="#">Separated link</a></li>
            </ul>
        </li>
        <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
            Clientes <span class="caret"></span>
            </a>
            <ul class="dropdown-menu">
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li class="divider"></li>
                <li><a href="#">Separated link</a></li>
            </ul>
        </li>
        <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
            Fecha <span class="caret"></span>
            </a>
            <ul class="dropdown-menu">
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li class="divider"></li>
                <li><a href="#">Separated link</a></li>
            </ul>
        </li>
        <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
            Productos <span class="caret"></span>
            </a>
            <ul class="dropdown-menu">
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li class="divider"></li>
                <li><a href="#">Separated link</a></li>
            </ul>
        </li>
        <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
            Asignación <span class="caret"></span>
            </a>
            <ul class="dropdown-menu">
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li class="divider"></li>
                <li><a href="#">Separated link</a></li>
            </ul>
        </li>
        <li class="normal-li">Ver por: </li>
        <li><input type="radio"><label style="color: rgb(46, 116, 241 );">Solicitud</label></li>
        <li><input type="radio"><label style="color: rgb(46, 116, 241 );">Producto</label></li>
        <li id="clock"><span class="glyphicon glyphicon-time"></span></li>
        <li>
            <input type="text" class="form-control" placeholder="Buscar solicitudes">
        </li>
    </ul>
</div>  

你可以看到我的 div 类 options-bar 包含其余部分,但类 text-center 什么都不做。

这是我的 options-bar 的 css 样式表:

.options-bar  {
    line-height: 50px;
    width: 100%;
}

【问题讨论】:

  • 您能解释一下您的问题吗?你是说垂直对齐吗?
  • 对不起,是水平居中
  • 问题不清楚,能否详细解释一下

标签: html css twitter-bootstrap


【解决方案1】:

您可以使用它来使 div 居中。将以下代码添加到要居中的 div 中。

.centered {
  margin: 0 auto;
}

注意:通常 div 占据整个宽度(因为它是块元素)。确保要居中的 div 的宽度小于屏幕宽度。否则你可能看不出有什么不同。

【讨论】:

    【解决方案2】:

    您可以将.nav.nav-pills li 项设置为flex-grow: 1;,这将导致所有列表项均等扩展以填充空间。以See this fiddle 为例。我还在下面添加了一个 sn-p,但它只在全屏下看起来正确。

    .options-bar  {
        line-height: 50px;
        width: 100%;
    }
    
    .nav.nav-pills li {
      flex-grow: 1;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js"></script>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" rel="stylesheet"/>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/js/bootstrap.min.js"></script>
    <div class="col-md-12 options-bar text-center">
      <ul class="nav nav-pills">
        <li class="normal-li">Ordenar por: </li>
        <li class="dropdown">
          <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
                            Status <span class="caret"></span>
                            </a>
          <ul class="dropdown-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
                            Clientes <span class="caret"></span>
                            </a>
          <ul class="dropdown-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
                            Fecha <span class="caret"></span>
                            </a>
          <ul class="dropdown-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
                            Productos <span class="caret"></span>
                            </a>
          <ul class="dropdown-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">
                            Asignación <span class="caret"></span>
                            </a>
          <ul class="dropdown-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
          </ul>
        </li>
        <li class="normal-li">Ver por: </li>
        <li>
          <input type="radio">
          <label style="color: rgb(46, 116, 241 );">Solicitud</label>
        </li>
        <li>
          <input type="radio">
          <label style="color: rgb(46, 116, 241 );">Producto</label>
        </li>
        <li id="clock"><span class="glyphicon glyphicon-time"></span></li>
        <li>
          <input type="text" class="form-control" placeholder="Buscar solicitudes">
        </li>
      </ul>
    </div>

    【讨论】:

    • 什么不起作用?你有错误吗?它会产生不同的行为吗?等等等等。
    • 它什么也没做,我还删除了我不再使用的样式,看看是否有帮助,但不,视图不受影响。检查员也不显示flex-grow: 1;
    • 嗯。听起来可能它被另一种风格所覆盖?尝试使用 CSS 块 (developer.mozilla.org/en-US/docs/Web/CSS/Specificity) 的特殊性。例如,改用ul.nav.nav-pills li。或尝试添加!important。我不太喜欢!important,但它在尝试覆盖引导样式时会很有帮助。
    【解决方案3】:

    在你的 div 中试试这个 css 类:

    .vertCenter {
        display: flex;
        justify-content: center;
        align-items: center;
    

    【讨论】:

      猜你喜欢
      • 2016-12-17
      • 2017-09-19
      • 2023-01-24
      • 2020-02-02
      • 2016-12-13
      • 1970-01-01
      • 2013-02-24
      • 1970-01-01
      • 2017-06-12
      相关资源
      最近更新 更多