Bootstrap 3.1.1中导航栏内相同高度的响应项

Ray*_*Ray 6 html css twitter-bootstrap twitter-bootstrap-3

我读了有关navbar-nav的信息,但我没有使用它,因为它从我的li元素而不是行创建列表.

没有navbar-nav的Img

如果我想要达到它,我应该添加这个CSS

@media screen and (min-width: 768px) {
.navbar-nav {
    width: 100%;
}
} 
Run Code Online (Sandbox Code Playgroud)

但这段css并没有解决我的IE8问题

IE8

HTML代码

<nav class="status-navbar navbar navbar-default" role="navigation">
    <!-- Collect the nav links, forms, and other content for toggling -->
    <div
        class="collapse navbar-collapse container-fluid container-lg-height container-md-height"
        id="bs-navbar-collapse-1">
        <div class="row row-lg-height row-md-height" style="margin: 0;">
            <div
                class="col-lg-4 col-md-4 search-panel col-lg-height col-md-height col-middle">
                <form class="navbar-form navbar-left search-form" role="search">
                    <div class="form-group col-lg-10 col-md-10">
                        <input type="text" class="search-input form-control input-lg"
                            placeholder="Twitter Quick Search">
                    </div>
                    <div class="col-lg-2 col-md-2">
                        <button type="button" class="btn btn-lg btn-primary">
                            <span class="glyphicon glyphicon-search"></span>
                        </button>
                    </div>
                </form>
            </div>
            <div class="col-lg-7 col-md-7 col-lg-height col-md-height col-middle">
                <ul class="nav navbar-nav">
                    <li class="col-lg-2 col-md-2 metricItem underline"><span class="metricsLabel">FOLLOWING</span>
                        <span id="followingTweetIds" class="metricsValue">0</span></li>
                    <li class="col-lg-3 col-md-3 metricItem"><span class="metricsLabel">SAVED
                            SEARCHES</span> <span class="metricsValue">0</span></li>
                    <li class="col-lg-2 col-md-2 metricItem">
                        <span class="metricsLabel">TWEETS RETRIEVED</span>
                        <span id="tweetsRetrieved" class="metricsValue">0</span>
                        <div class="limitPane">
                            <span class="metricsLabel">( LIMIT</span>
                            <span id="limitRequests" class="limitRequests"></span>
                            <span class="metricsLabel">)</span>
                        </div>
                    </li>
                </ul>
            </div>
            <div class="col-lg-1 col-md-1 col-lg-height col-md-height col-middle">
                <ul class="nav navbar-nav">
                    <li><a href="#" id="notificationBtn" class="notificationBtn" style="font-size: 17px;"> 
                            <span class="glyphicon glyphicon-bell">Notifications</span>
                        </a></li>
                </ul>
            </div>
        </div>
    </div>
</nav>
Run Code Online (Sandbox Code Playgroud)

请帮助我理解我应该使用navbar-nav以及如何在我的示例中使用跨浏览器解决方案.

链接到JSFiddle

甚至有趣的是,我将这个片段的位置从bootstrap.min.css下的head更改为<body>元素的底部.

<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
Run Code Online (Sandbox Code Playgroud)

现在在IE 8中它看起来像 IE8中新的navbar img

这是我错误的位置包括resond js.因为我使用jquery布局框架.我明白我的显示有问题:table-row.我使用它是因为我想在行内创建具有相同高度的高度Bootstrap 3响应列的列

在所有Css之后引用Respond.js脚本

.更新2

我将导航栏更改为默认Bootply.但它仍然看起来与我想要实现的结果不同.我失去了对齐我的通知链接和表单元素在navbar addind navbar-btn内部无效的可能性.我不能为输入字段做响应宽度.Bootstrap 3 - 如何最大化导航栏内的输入宽度.此解决方案仅适用于输入组.请帮我理解如何创造

  1. 导航栏内相同高度的响应项
  2. 拉伸宽度表单(使用输入组而不是表单组)这样一种方式,当我调整页面按钮大小时,下一行

Chr*_*ina 4

此示例位于 Bootstrap 3.2 中,该版本对其组件进行了错误修复,但这可能不是这里的问题。你的 CSS 非常混乱,很难确定哪些内容在 IE8 中不起作用。

我会构建自己的组件,而不是使用导航栏,它并不适合像您那样使用。如果不熟悉 CSS 源代码,那么重写这么多确实不是一个好主意。

避免像您一样在具有 box-sizing:border-box 的元素上使用边距,尤其是当它们试图装入流体容器时。你在班级上有利润这会把事情搞砸的。

IE 8 屏幕截图:

在此输入图像描述

演示: http: //jsbin.com/zaxiwo/1/

编辑: http: //jsbin.com/zaxiwo/1/edit

尖端:

  1. 将媒体查询保持在最低限度,即尽可能少使用。
  2. 每次你做出改变,即使是很小的改变,在 IE8 中检查一下,你就会知道发生了什么。
  3. 评论你的html

HTML:(需要在通过相对路径链接 CSS 和本地托管 CSS 之前,按照说明在头部正确安装 respond.js。)

注:html和CSS不完整,小视口样式还没做好。您可以将所有视口大小之间共享的通用值放在最小宽度媒体查询之前。如果它对所有人来说都是通用的,那么它就会超出媒体查询的范围,但如果有细微的差别,您可以删除该样式,因此,如果小视口上有填充,但较大视口上没有填充,请删除较大视口上的填充,但如果有外观上完全不同,然后将小视口样式仅放在最大宽度中,该宽度比最小宽度小 1px。

 <div class="control-bar container-fluid">
     <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".control-collapse">
     <span class="sr-only">Toggle navigation</span>
     <span class="icon-bar"></span>
     <span class="icon-bar"></span>
     <span class="icon-bar"></span>
     </button>  
     <div class="collapse control-collapse">
        <div class="row">
           <div class="col-sm-3">
              <div class="input-group">
                 <input type="text" class="form-control">
                 <span class="input-group-btn">
                 <button class="btn btn-primary" type="button">Go!</button>
                 </span>
              </div>
              <!-- /input-group -->
           </div>
           <!--/.col-*-3 -->
           <div class="col-sm-5">
              <div class="row">
                 <div class="col-sm-4 indicator active">
                    <span class="title">Word</span>
                    <span class="number">1</span>
                 </div>
                 <!--/.col-*-4.indicator :: nested -->
                 <div class="col-sm-4 indicator">
                    <span class="title">Word</span>
                    <span class="number">2</span>
                 </div>
                 <!--/.col-*-4.indicator :: nested -->
                 <!--/.col-*-4 :: nested -->
                 <div class="col-sm-4 indicator">
                    <span class="title">Word</span>
                    <span class="number">3</span>
                    <span class="notice">word</span>
                 </div>
                 <!--/.col-*-4.indicator :: nested -->
              </div>
              <!--/.row (nested) -->
           </div>
           <!--/.col-*-7 -->
           <div class="col-sm-3 col-sm-offset-1 icon-link">
              <a href="#"><i class="glyphicon glyphicon-home"></i> icon link goes here</a>
           </div>
           <!--/.col-*-3 -->
        </div>
        <!--/.row -->
     </div>
     <!--/.nav-collapse -->
  </div>
  <!--/control-bar.container-fluid -->
Run Code Online (Sandbox Code Playgroud)

CSS

.control-bar {
    background: #333;
    color: #fff;
    clear: both;
}

.control-bar a {color:#fff}

.control-bar .control-collapse {
    clear: both;
    width: 100%;
    padding: 0 15px 20px;
}
.control-bar .icon-bar {
    background: #fff;
}

.indicator:hover,
.indicator.active {
    border-bottom-color: orange
}
.indicator {
    padding: 10px 15px;
    border-bottom: 5px solid transparent;
}
.icon-link a {
    padding: 10px 0;
    display: block;
}
/* how it looks on larger viewports*/
@media (min-width:768px) {  
    .control-bar .control-collapse {
        display: inline!important;
        padding: 0;
    }
    .indicator {
        height: 100px;
        padding: 5px 0 0 0;
        display: table;
    }
    .indicator span {
        display: table-row;
        text-align: center;
        font-size: 14px;
        border: 1px solid red;
        vertical-align: middle;
    }
    .indicator .title {
        font-size: 15px;
        text-transform: uppercase;
    }
    .indicator .number {
        font-size: 20px;
        color: orange;
    }
    .indicator .notice {
        font-size: 12px
    }
    /* height of parent minus by height of element divided by 2 */
    .control-bar .input-group {
        margin-top: 33px
    }
    .icon-link {
        text-align: right;
        padding-top: 28px;
    }
} 
Run Code Online (Sandbox Code Playgroud)