有什么方法可以增加引导3导航栏崩溃的点(即,它崩溃成一个下拉的肖像平板)?
这两个适用于引导2,但不是现在!
如何改变导航栏崩溃阈值使用Twitter引导响应?
更改默认的响应式导航栏断点
有什么方法可以增加引导3导航栏崩溃的点(即,它崩溃成一个下拉的肖像平板)?
这两个适用于引导2,但不是现在!
如何改变导航栏崩溃阈值使用Twitter引导响应?
更改默认的响应式导航栏断点
当前回答
我今天也遇到了同样的问题。
引导4
它是一个本地功能:https://getbootstrap.com/docs/4.0/components/navbar/#responsive-behaviors
你必须使用.navbar-expand{-sm|-md|-lg|-xl}类:
<nav class="navbar navbar-expand-md navbar-light bg-light">
引导3
@media (max-width: 991px) {
.navbar-header {
float: none;
}
.navbar-toggle {
display: block;
}
.navbar-collapse {
border-top: 1px solid transparent;
box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
}
.navbar-collapse.collapse {
display: none!important;
}
.navbar-nav {
float: none!important;
margin: 7.5px -15px;
}
.navbar-nav>li {
float: none;
}
.navbar-nav>li>a {
padding-top: 10px;
padding-bottom: 10px;
}
.navbar-text {
float: none;
margin: 15px 0;
}
/* since 3.1.0 */
.navbar-collapse.collapse.in {
display: block!important;
}
.collapsing {
overflow: hidden!important;
}
}
只需更改md尺寸的991px * 1199px。
Demo
其他回答
如果您面临的问题是菜单分解成多行,您可以尝试以下方法之一:
1)尽量减少菜单项的数量或长度,如删除菜单项或缩短单词。
2)减少菜单项之间的填充,就像这样:
.navbar .nav > li > a {
padding: 10px 15px 10px; /* Change here the second value for padding-left and padding right */
}
默认填充两边15px(左右)。
如果您更喜欢改变每个单独的用途:
padding-left: 7px;
padding-right: 8px;
此设置也会影响下拉列表。
这并没有回答问题,但它可以帮助那些不想乱动CSS或使用LESS变量的人。解决这个问题的两种常见方法。
Bootstrap 2和Bootstrap 3的最大区别在于,Bootstrap 3是“移动优先”。
这意味着默认样式是为移动设备设计的,在导航栏的情况下,这意味着它在默认情况下是“折叠”的,当它达到一定的最小尺寸时是“展开”的。
Bootstrap 3的网站实际上有一个关于该怎么做的“提示”: http://getbootstrap.com/components/#navbar
自定义崩溃点 根据导航栏中的内容,您可能需要更改导航栏在折叠模式和水平模式之间切换的点。自定义@grid-float-breakpoint变量或添加自己的媒体查询。
如果您要重新编译您的LESS,您将在变量中找到注意的LESS变量。更少的文件。它目前被设置为“扩展”@media (min-width: 768px),这是一个“小屏幕”(即。一个平板电脑)由Bootstrap 3项。
@grid-float-breakpoint: @screen-tablet;
如果你想保持折叠的时间长一点,你可以这样调整:
@grid-float-breakpoint: @screen-desktop;(992 px断点)
或者更快地扩张
@grid-float-breakpoint: @screen-phone (480px断点)
如果你想让它在以后展开,而不是重新编译LESS,你将不得不覆盖在768px媒体查询中应用的样式,并让它们返回到之前的值。然后在适当的时候重新添加它们。
我不确定是否有更好的办法。根据需要重新编译Bootstrap LESS是最好(最简单)的方法。否则,你将不得不找到所有的CSS媒体查询,影响你的导航栏,覆盖他们默认样式@ 768px宽度,然后恢复他们在一个更高的min-width。
重新编译LESS只需要改变变量就可以实现所有这些神奇的功能。这就是LESS/SASS预编译器的意义所在。=)
(注意,我确实把它们都查了一遍,大约有100行代码,这让我放弃了这个想法,只是为给定的项目重新编译Bootstrap,避免意外地搞砸一些事情)
最简单的方法是自定义引导
发现变量:
@grid-float-breakpoint
它被设置为@screen-sm,您可以根据您的需要更改它。 希望能有所帮助!
我很关心自定义Bootstrap之后的维护和升级问题。我可以在今天编写定制步骤的文档,并希望三年后升级Bootstrap的人能够找到文档并重新应用这些步骤(在那时可能工作,也可能不工作)。我认为这两种方法都可以,但我更喜欢在代码中保留任何自定义。
不过,我不太明白Seb33300的方法是如何起作用的。当然,Bootstrap 4.0.3不能正常工作。为了使导航栏扩展到1200而不是768,必须重写媒体查询的规则,以防止扩展到768和强制扩展到1200。
我有一个更长的菜单,可以在iPad的纵向模式下自动换行。 下面将菜单一直折叠到1200断点:
@media (min-width: 768px) {
.navbar-header {
float: none; }
.navbar-toggle {
display: block; }
.navbar-fixed-top .navbar-collapse,
.navbar-static-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
padding-right: 15px;
padding-left: 15px; }
.navbar-collapse.collapse {
display: none !important; }
.navbar-collapse.collapse.in {
display: block!important;
margin-top: 0px; }
}
@media (min-width: 1200px) {
.navbar-header {
float: left; }
.navbar-toggle {
display: none; }
.navbar-fixed-top .navbar-collapse,
.navbar-static-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
display: block !important; }
}
nabvar会在小型设备上崩溃。折叠点由变量中的@grid-float-breakpoint定义。默认情况下,它将在768px之前。对于屏幕宽度低于768像素的屏幕,导航栏看起来是这样的:
可以在变量中更改@grid-float-breakpoint。并重新编译引导程序。当这样做时,你还必须改变navbar.less中的@screen-xs-max。您必须将这个值设置为新的@grid-float-breakpoint -1。参见:https://github.com/twbs/bootstrap/pull/10465。这是需要改变导航栏形式和下拉菜单在@grid-float-breakpoint到他们的移动版本。