Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css Twitter引导程序3:Navbar在粘贴触发时更改宽度_Css_Twitter Bootstrap_Width_Navbar_Affix - Fatal编程技术网

Css Twitter引导程序3:Navbar在粘贴触发时更改宽度

Css Twitter引导程序3:Navbar在粘贴触发时更改宽度,css,twitter-bootstrap,width,navbar,affix,Css,Twitter Bootstrap,Width,Navbar,Affix,嗯,我有一个关于bootstrap-3词缀脚本的奇怪问题。你可以从中看出问题所在。请水平最大化结果框并向下滚动,以便触发“粘贴”。正如你所看到的,导航条在右侧增加,我真的看不出有什么原因会产生这种效果。我临时用addng解决了这个问题 .container { padding-left: 0px; padding-right: 0px; } 到css。但是,正如你所看到的,它不是很漂亮,我不想去掉这些衬垫。或者,我可以设置一个静态宽度,如 width: 1140px; 在导航词缀中。但这不

嗯,我有一个关于bootstrap-3词缀脚本的奇怪问题。你可以从中看出问题所在。请水平最大化结果框并向下滚动,以便触发“粘贴”。正如你所看到的,导航条在右侧增加,我真的看不出有什么原因会产生这种效果。我临时用addng解决了这个问题

 .container
{
padding-left: 0px;
padding-right: 0px;
}
到css。但是,正如你所看到的,它不是很漂亮,我不想去掉这些衬垫。或者,我可以设置一个静态宽度,如

width: 1140px;
在导航词缀中。但这不是很有反应。。。我真的尝试了很多方法,但没有得到任何令人满意的结果。你知道是什么引起的吗

编辑

好的,Chrome的调试器给了我更多的信息:在启动affix之前,nav元素得到了类'affix top'(从Chrome调试器中提取的不是html源代码!):


奇怪的是,在HTML代码中没有声明词缀top。然而,#nav.nav.navbar.navbar-default-affix-top的大小如下:1140px 52px

启动滚动和粘贴后,“粘贴顶部”类更改为“粘贴”,并且“粘贴”的大小为:1170px 52px


这是30px,导航条向右移。但是我怎样才能阻止它呢?最重要的是,我在任何csv文件中都找不到类词缀top…

你无法解决这个问题。问题是
位置:固定。导航栏将由浏览器呈现,不带
left
right
属性

你只能通过三件事来解决这个问题:

1。使用绝对定位。

使用
位置:绝对
并在使用jQuery滚动时更改
top
值。缺点:您需要一个Javascript部分来实现这一点

2。设置左/右

设置a
左:px
右侧:?px

3。定义特殊宽度


设置<代码>最小宽度:?px和/或<代码>最大宽度:?px
对于每个媒体查询

当我给词缀类一个最小宽度为100%时,它对我有效。也适用于响应型。

我无法确认这一点

最小宽度:100%

为我工作。 我使用父div中的innerWidth解决了这个问题。下面的示例(包括一个列-当然需要放在一个容器和一行中…):


享受。

Thx,我想我更喜欢最大宽度的解决方案:)如果粘贴的导航位于不占用一行全宽的列中,则此方法效果最好。这是唯一对我有效的方法,以防止面板在滚动时以错误的宽度重新排列。
<nav id="nav" class="navbar navbar-default affix-top" role="navigation" data-spy="affix" data-offset-top="133" style="background-color: yellow">
<div class="col-sm-3 col-lg-2">
  <div class="sidebar">
    <div class="panel-heading">Some Title</div>
       <div class="panel-body">
         Some Content
       </div>
    </div>
  </div>
</div>
  //Applied affix to sidebar class
  $('.sidebar').affix({
        offset: {
            top: 0
        }
    }).on('affix.bs.affix',function(){
        setAffixContainerSize();
    });

    /*Setting the width of the sidebar (I took 10px of its value which is the margin between cols in my Bootstrap CSS*/
    function setAffixContainerSize(){
        $('.sidebar').width($('.sidebar').parent().innerWidth()-10);
    }

    $(window).resize(function(){
        setAffixContainerSize();
    });