992pxなど、768pxよりも前の解像度でnavbarを折りたたみたいのですが、どうすればよいですか?ありがとう! (bootstrapページでカスタマイズできますが、新しいbootstrap.cssファイルでプロジェクトをやり直したくありません)
Less/Sassを使用してBootstrapを操作したくない場合(CDNを介してロードするためである可能性があります)、これは私にとってトリックでした:
@media (min-width: 768px) and (max-width: 991px) {
.navbar-collapse.collapse {
display: none !important;
}
.navbar-collapse.collapse.in {
display: block !important;
}
.navbar-header .collapse, .navbar-toggle {
display:block !important;
}
.navbar-header {
float:none;
}
}
デモ: https://jsfiddle.net/0pmy8usr/
これを別のCSSファイルに追加し、bootstrap.cssの後に含めます
Bootstrap 4:の更新
@media(max-width:900px) {
.navbar .navbar-brand {float:none;display: inline-block;}
.navbar .navbar-nav>.nav-item { float: none; margin-left: .1rem;}
.navbar .navbar-nav {float:none !important;}
.nav-item{width:100%;text-align:left;}
.navbar-toggler {display: block !important;}
.navbar-toggleable-sm.collapse {display:none !important}
.navbar-toggleable-sm.collapse.in {display:block !important}
}
variables.less
、 変化する
@grid-float-breakpoint: @screen-sm-min
に
@grid-float-breakpoint: @screen-md-min;
768pxよりも前の解像度でnavbarを折りたたむ必要がある場合は、@ media min-width
およびmax-width
、そして新しい。cssファイル(を作成するために新しいプロジェクトを開始する必要はありません。例:custom.css)およびmain bootstrap.cssの下に挿入して、その値をオーバーライドします。そしてその中にこのコードを書きます:
CODE:
@media (min-width: 992px) {
.collapse {
display: none !important;
}
}
また、この投稿を見ることができます: change bootstrap navbar collapse 。
これが解決策になることを願っています。
また、ギャップを埋めるbootstrapクラスをオーバーライドできます。ベローは、ドロップダウンメニューで基本的なナビゲーションバーをオーバーライドする作業コードです。他のクラスをオーバーライドする必要がある場合があります。
@media (min-width: 768px) and (max-width: 991px) {
.navbar-nav .open .dropdown-menu {
position: static;
float: none;
width: auto;
margin-top: 0;
background-color: transparent;
border: 0;
-webkit-box-shadow: none;
box-shadow: none;
}
.navbar-nav .open .dropdown-menu > li > a {
line-height: 20px;
}
.navbar-nav .open .dropdown-menu > li > a,
.navbar-nav .open .dropdown-menu .dropdown-header {
padding: 5px 15px 5px 25px;
}
.dropdown-menu > li > a {
display: block;
padding: 3px 20px;
clear: both;
font-weight: normal;
line-height: 1.42857143;
color: #333;
white-space: nowrap;
}
.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;*/
margin: 7.5px 50px 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;
}
}
CDNの代わりにbootstrap=をプロジェクトに取り込むことをお勧めします。次のようなメディアクエリを探します。
@media (min-width: 768px) {
.navbar-expand-md {
-ms-flex-flow: row nowrap;
flex-flow: row nowrap; //...etc.
それを次のように変更します。
@media (min-width: 900px) {
.navbar-expand-md {
-ms-flex-flow: row nowrap;
flex-flow: row nowrap; // ...etc.
または、CDNを使用している場合は、その特定のメディアクエリのオーバーライドを作成します。