gpt4 book ai didi

jquery - Bootstrap 4 将按钮放在顶部紧 Angular

转载 作者:行者123 更新时间:2023-11-28 19:23:25 25 4
gpt4 key购买 nike

我正在制作一个标题,其中语言选择器应该位于右上角,左侧是 Logo 图像。在其下方有一排横跨整个宽度的链接。

通常这应该不是问题,但是当标题折叠时,语言选择器会显示在折叠菜单中。

这就是为什么链接和语言选择器必须在 <nav class="nav-bar navbar-expand-md"> 中的原因一起。

这就是选择器在大屏幕上总是处于错误位置的原因。

我还没有找到在不破坏折叠菜单的情况下将语言按钮放置在正确位置的方法。

如果 Bootstrap 专家可以看看这个就好了。

这里有一张图片来说明enter image description here

这里是一个链接 fiddle

$('.btn-menu').on('click', function(e) {
if (!$('html').hasClass('push')) {
$('html').addClass('push');

} else {
$('html').removeClass('push');

};

e.preventDefault();
});
/*navbar*/
.btn.btn-custom {
padding-top: 0px;
padding-bottom: 0px;
margin-top: 6px; }
.btn.btn-custom img {
margin-right: 6px; }
.btn.btn-custom:active {
background-image: #fff; }

/*$background_color_2: rgba(0, 0, 0, 0);*/
/*$border_color_3: #9c9a9a;*/
#header {
border-bottom: 1px solid #e4e4e4;
position: relative;
z-index: 140; }
#header .logo {
float: left;
text-align: left;
text-indent: -9999px;
overflow: hidden;
width: 100%;
height: 100px;
background: url("https://images.unsplash.com/photo-1522139137660-4248e04955b8?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1355&q=80") no-repeat;
margin: 36px 0 0; }
#header .logo a {
display: block;
height: 100%; }
#header .type2 {
text-indent: 0;
font-size: 35px;
line-height: 40px;
font-weight: 500;
padding: 6px 0 0 35px;
position: relative; }
#header .type2:before {
position: absolute;
content: '';
background: #fff;
left: 30px;
top: 0;
right: 0;
bottom: 0; }
#header .type2 a {
position: relative;
z-index: 3; }

#header .tools {
padding: 0 0 23px; }
#header .tools:before, #header .tools:after {
content: " ";
display: table; }

#header .search-form {
float: right;
margin-top: -1px; }

#main-nav > li > a {
display: block;
font-weight: 500;
padding: 0 26px 21px;
padding-top: 0px;
padding-right: 26px;
padding-bottom: 21px;
padding-left: 26px;
position: relative; }

.hamburger {
display: none !important; }

.lang {
float: right;
margin: -1px -2px 0 9px;
position: relative; }
.lang .dropdown-menu {
left: auto;
right: 0;
border-radius: 0;
padding: 0; }
.lang .dropdown-menu a {
font-size: 18px;
line-height: 19px;
padding: 10px 15px;
font-weight: 500; }

#main-nav {
margin: 30px 0 0;
padding: 0 0 0 40px;
list-style: none;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
-moz-justify-content: center;
justify-content: center; }
#main-nav > li:hover > a:before {
visibility: visible;
left: 0;
right: 0; }
#main-nav > li.active > a:before {
visibility: visible;
left: 0;
right: 0; }

.btn {
padding: 10px 20px;
font-size: 18px;
line-height: 28px;
border-radius: 0px;
vertical-align: top;
outline: 0 !important;
font-weight: 500;
min-width: 184px; }

.btn-lg, .btn-group-lg > .btn {
font-weight: normal;
font-size: 20px;
line-height: 30px; }

.btn-group-lg > .btn {
font-weight: normal;
font-size: 20px;
line-height: 30px; }

.btn-md {
padding: 15px 20px;
font-size: 14px;
line-height: 20px;
border-radius: 0px; }

.open > .btn-default.dropdown-toggle {
color: #4b4b4b;
background-color: transparent;
/* border-color: $border_color_3; */
background-image: none;
background-color: #4b4b4b;
border-color: #4b4b4b;
color: #fff; }
.open > .btn-default.dropdown-toggle:hover {
color: #4b4b4b;
background-color: transparent;
border-color: #7b7979;
background-color: #4b4b4b;
border-color: #4b4b4b;
color: #fff; }
.open > .btn-default.dropdown-toggle:focus {
color: #4b4b4b;
background-color: transparent;
border-color: #7b7979;
background-color: #4b4b4b;
border-color: #4b4b4b;
color: #fff; }

.open > .btn-default.dropdown-toggle.focus {
color: #4b4b4b;
background-color: transparent;
border-color: #7b7979;
background-color: #4b4b4b;
border-color: #4b4b4b;
color: #fff; }

.open > .btn-select.dropdown-toggle:after {
border-top-color: #fff; }

.open > .btn-select.dropdown-toggle:hover:after {
border-top-color: #fff; }

.open > .btn-select.dropdown-toggle:focus:after {
border-top-color: #fff; }

.open > .btn-select.dropdown-toggle.focus:after {
border-top-color: #fff; }

.btn-default.active.focus {
color: #4b4b4b;
background-color: transparent;
border-color: #7b7979;
background-color: #4b4b4b;
border-color: #4b4b4b;
color: #fff; }

.btn-default.disabled:hover {
background-color: transparent;
border-color: #bab9b9; }

.btn-default.disabled:focus {
background-color: transparent;
border-color: #bab9b9; }

.btn-default.disabled.focus {
background-color: transparent;
border-color: #bab9b9; }

.btn-default[disabled]:hover {
background-color: transparent;
border-color: #bab9b9; }

.btn-default[disabled]:focus {
background-color: transparent;
border-color: #bab9b9; }

.btn-default[disabled].focus {
background-color: transparent;
border-color: #bab9b9; }

fieldset[disabled] .btn-default:hover {
background-color: transparent;
border-color: #bab9b9; }

fieldset[disabled] .btn-default:focus {
background-color: transparent;
border-color: #bab9b9; }

fieldset[disabled] .btn-default.focus {
background-color: transparent;
border-color: #bab9b9; }

.btn-default.focus {
background-color: #4b4b4b;
border-color: #4b4b4b;
color: #fff; }
.btn-default.focus:active {
background-color: #4b4b4b;
border-color: #4b4b4b;
color: #fff; }

.btn-select {
line-height: 19px;
min-width: 130px;
position: relative;
text-align: left;
padding-left: 11px;
padding-right: 50px;
border-color: lightgray; }
.btn-select:before {
position: absolute;
content: '';
right: 43px;
top: 4px;
bottom: 4px;
width: 1px;
background: lightgray; }
.btn-select:after {
position: absolute;
content: '';
top: 17px;
right: 16px;
display: block;
height: 0;
width: 0;
border-top: 8px solid #4b4b4b;
border-right: 7px solid transparent;
border-left: 7px solid transparent;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s; }
.btn-select:active:after {
border-top-color: #fff; }
.btn-select:active:hover:after {
border-top-color: #fff; }
.btn-select:active:focus:after {
border-top-color: #fff; }
.btn-select:focus:after {
border-top-color: #fff; }
.btn-select:hover:after {
border-top-color: #fff; }

.btn-select.active:after {
border-top-color: #fff; }

.btn-select.active:hover:after {
border-top-color: #fff; }

.btn-select.active:focus:after {
border-top-color: #fff; }

.btn-select.focus:after {
border-top-color: #fff; }

.btn-select.focus:active:after {
border-top-color: #fff; }

.btn-select.active.focus:after {
border-top-color: #fff; }

.btn-menu {
width: 28px;
height: 18px;
cursor: pointer;
text-indent: -9999px;
z-index: 160;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s;
position: relative;
float: right;
margin: 15px 0 0; }
.btn-menu span:before {
position: absolute;
content: '';
left: 0;
top: 0;
right: 0;
height: 2px;
background: #4b4b4b;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s;
top: 16px; }
.btn-menu:before {
position: absolute;
content: '';
left: 0;
top: 0;
right: 0;
height: 2px;
background: #4b4b4b;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s;
top: 8px; }
.btn-menu:after {
position: absolute;
content: '';
left: 0;
top: 0;
right: 0;
height: 2px;
background: #4b4b4b;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s; }

@media (max-width: 767px) {
#header {
padding: 20px 0; }
#header .logo {
margin: 0; }
#header .logo .type2 {
font-size: 30px;
line-height: 35px; }
#header .logo .type2 .nav-bar {
position: fixed;
left: 0;
border: 0;
top: 89px;
right: 0;
bottom: 0;
background: #fff;
overflow-x: hidden;
overflow-y: auto;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s;
opacity: 0;
-webkit-transform: scale(0);
-ms-transform: scale(0);
-o-transform: scale(0);
transform: scale(0);
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
-moz-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column; }
#header .logo .type2 .nav-bar .tools {
margin: auto -1px 0;
padding: 0;
list-style: none; }
#header .logo .type2 .nav-bar .tools .lang {
margin: 0;
display: block;
float: none; }
#header .logo .type2 .nav-bar .tools .lang .btn-select {
display: block; }
#header .logo .type2 .nav-bar .tools .lang .btn-select:after {
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
-o-transform: rotate(180deg);
transform: rotate(180deg);
top: 16px; }
#header .logo .type2 .nav-bar .tools .lang .dropdown-menu {
top: auto;
bottom: 100%;
margin: 0;
width: 100%; }
#header .logo .type2 .nav-bar .search-form {
float: none;
max-width: none; }
#header .logo .type2 .nav-bar .search-form .btn-search {
min-width: 44px; }
#header .hamburger {
flex: 4%;
max-width: 4%;
display: inline !important; }
#main-nav {
display: block;
-webkit-order: -1;
-ms-flex-order: -1;
order: -1; }
#main-nav li {
border-bottom: 1px solid #e4e4e4; }
#main-nav li > li > a {
padding: 10px 20px;
font-size: 16px;
line-height: 24px; }
#main-nav li > li > a:before {
left: 0;
top: 50%;
bottom: 50%;
height: auto;
width: 4px;
right: auto; }
#main-nav li > li:hover > a:before {
right: auto;
top: -1px;
bottom: -1px; }
#main-nav li > li.active > a:before {
right: auto;
top: -1px;
bottom: -1px; }
a {
display: block;
font-weight: 500;
padding: 0 26px 21px;
position: relative; }
a:before {
position: absolute;
content: '';
bottom: -1px;
left: 50%;
right: 50%;
height: 4px;
background: #c2002d;
visibility: hidden;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s; }
.push {
overflow: hidden;
height: 100%; }
.push body {
overflow: hidden;
height: 100%; }
.push .btn-menu:before {
opacity: 0; }
.push .btn-menu:after {
top: 8px;
-webkit-animation: anim-btn-menu1 0.3s 0.3s ease forwards;
-o-animation: anim-btn-menu1 0.3s 0.3s ease forwards;
animation: anim-btn-menu1 0.3s 0.3s ease forwards; }
.push .btn-menu span:before {
top: 8px;
-webkit-animation: anim-btn-menu2 0.3s 0.3s ease forwards;
-o-animation: anim-btn-menu2 0.3s 0.3s ease forwards;
animation: anim-btn-menu2 0.3s 0.3s ease forwards; }
.push #header .nav-bar {
opacity: 1;
-webkit-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); }
.push #header .hamburger {
flex: 4%;
max-width: 4%;
display: inline !important; } }

@media (max-width: 767px) and (max-width: 991px) {
#main-nav {
padding-left: 0; }
#main-nav > li > a {
padding-left: 15px;
padding-right: 15px;
font-size: 14px; } }

@media (max-width: 767px) and (max-width: 767px) {
#header .nav-bar {
position: fixed;
left: 0;
border: 0;
top: 89px;
right: 0;
bottom: 0;
background: #fff;
overflow-x: hidden;
overflow-y: auto;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s;
opacity: 0;
-webkit-transform: scale(0);
-ms-transform: scale(0);
-o-transform: scale(0);
transform: scale(0);
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
-moz-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column; } }

@media (max-width: 767px) {
#header .nav-bar .tools {
margin: auto -1px 0;
padding: 0;
list-style: none; }
#header .nav-bar .tools .lang {
margin: 0;
display: block;
float: none; }
#header .nav-bar .tools .lang .btn-select {
display: block; }
#header .nav-bar .tools .lang .btn-select:after {
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
-o-transform: rotate(180deg);
transform: rotate(180deg);
top: 16px; }
#header .nav-bar .tools .lang .dropdown-menu {
top: auto;
bottom: 100%;
margin: 0;
width: 100%; }
#header .nav-bar .tools .search-form {
float: none;
max-width: none; }
#header .nav-bar .tools .search-form .btn-search {
min-width: 44px; }
#main-nav {
margin: 0;
padding: 0 0 0 40px;
list-style: none;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
-moz-justify-content: center;
justify-content: center; } }

@media (max-width: 767px) and (max-width: 991px) {
#main-nav {
padding-left: 0; } }

@media (max-width: 767px) and (max-width: 767px) {
#main-nav {
display: block;
-webkit-order: -1;
-ms-flex-order: -1;
order: -1; } }

@media (max-width: 767px) and (max-width: 767px) {
#main-nav > li {
border-bottom: 1px solid #e4e4e4; } }

@media (max-width: 767px) {
#main-nav > li > a {
display: block;
font-weight: 500;
padding: 0 26px 21px;
position: relative; }
#main-nav > li > a:before {
position: absolute;
content: '';
bottom: -1px;
left: 50%;
right: 50%;
height: 4px;
background: #c2002d;
visibility: hidden;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s; } }

@media (max-width: 767px) and (max-width: 991px) {
#main-nav > li > a {
padding-left: 15px;
padding-right: 15px;
font-size: 14px; } }

@media (max-width: 767px) and (max-width: 767px) {
#main-nav > li > a {
padding: 10px 20px;
font-size: 16px;
line-height: 24px; }
#main-nav > li > a:before {
left: 0;
top: 50%;
bottom: 50%;
height: auto;
width: 4px;
right: auto; } }

@media (max-width: 767px) {
#main-nav > li:hover > a:before, #main-nav > li.active > a:before {
visibility: visible;
left: 0;
right: 0; } }

@media (max-width: 767px) and (max-width: 767px) {
#main-nav > li:hover > a:before, #main-nav > li.active > a:before {
right: auto;
top: -1px;
bottom: -1px; } }

@media (max-width: 767px) and (max-width: 767px) {
.push {
overflow: hidden;
height: 100%; }
.push body {
overflow: hidden;
height: 100%; }
.push .btn-menu:before {
opacity: 0; }
.push .btn-menu:after {
top: 8px;
-webkit-animation: anim-btn-menu1 0.3s 0.3s ease forwards;
-o-animation: anim-btn-menu1 0.3s 0.3s ease forwards;
animation: anim-btn-menu1 0.3s 0.3s ease forwards; }
.push .btn-menu span:before {
top: 8px;
-webkit-animation: anim-btn-menu2 0.3s 0.3s ease forwards;
-o-animation: anim-btn-menu2 0.3s 0.3s ease forwards;
animation: anim-btn-menu2 0.3s 0.3s ease forwards; }
.push #header .nav-bar {
opacity: 1;
-webkit-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); } }

@media (max-width: 767px) {
.btn-menu {
width: 28px;
height: 18px;
cursor: pointer;
text-indent: -9999px;
z-index: 160;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s;
position: relative;
float: right;
margin: 0; }
.btn-menu span:before, .btn-menu:before, .btn-menu:after {
position: absolute;
content: '';
left: 0;
top: 0;
right: 0;
height: 2px;
background: #4b4b4b;
-webkit-transition: all ease 0.3s;
-o-transition: all ease 0.3s;
transition: all ease 0.3s; }
.btn-menu:before {
top: 8px; }
.btn-menu span:before {
top: 16px; }
@-webkit-keyframes anim-btn-menu1 {
100% {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg); } }
@-moz-keyframes anim-btn-menu1 {
100% {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg); } }
@-ms-keyframes anim-btn-menu1 {
100% {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg); } }
@keyframes anim-btn-menu1 {
100% {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg); } }
@-webkit-keyframes anim-btn-menu2 {
100% {
-webkit-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg); } }
@-moz-keyframes anim-btn-menu2 {
100% {
-webkit-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg); } }
@-ms-keyframes anim-btn-menu2 {
100% {
-webkit-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg); } }
@keyframes anim-btn-menu2 {
100% {
-webkit-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg); } } }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>

<div id="header">
<div class="container">
<div class="row">

<div class="col-lg-8 col-md-8">
<strong class="logo"><a href="#"></a></strong>
</div>
<nav class="nav-bar navbar-expand-md">
<div class="col-lg-4 col-md-4">
<div class="tools">
<div class="lang">
<a href="#" data-toggle="dropdown" class="btn btn-default btn-select">English</a>
<ul class="dropdown-menu " >
<li class="dropdown-item"><a href="#">English</a>
</li>
<li class="dropdown-item"><a href="#">spanish</a>
</li>
</ul>
</div>
<!-- lang -->
</div>
<!-- tools -->
</div>

<ul id="main-nav" class="collapse navbar-collapse" id="navDrop">
<li><a href="#">Home</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
</ul>
</nav>

<!-- nav-bar --> <span class=" hamburger ml-auto mr-3 btn-menu d-block collapse navbar-collapse" data-target="#navDrop"><span>menu</span></span>
</div>
</div>
</div>

最佳答案

重构您的 HTML 代码。 <nav>应该是菜单项的直接父级,即 #main-nav .

因此,只需移动该列即 col-lg-4在上一列旁边,即 col-lg-8 .

    <div class="row">
<div class="col-lg-8 col-md-8">
<strong class="logo"><a href="#"></a></strong>
</div>
<div class="col-lg-4 col-md-4">
<div class="tools">
<div class="lang">
<a href="#" data-toggle="dropdown" class="btn btn-default btn-select">English</a>
<ul class="dropdown-menu ">
<li class="dropdown-item"><a href="#">English</a>
</li>
<li class="dropdown-item"><a href="#">spanish</a>
</li>
</ul>
</div>
<!-- lang -->
</div>
<!-- tools -->
</div>
<nav class="nav-bar navbar-expand-md">
<ul id="main-nav" class="collapse navbar-collapse" id="navDrop">
<li><a href="#">Home</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
<li><a href="#">Page</a>
</li>
</ul>
</nav>

<!-- nav-bar --><span class=" hamburger ml-auto mr-3 btn-menu d-block collapse navbar-collapse" data-target="#navDrop"><span>menu</span></span>
</div>

关于jquery - Bootstrap 4 将按钮放在顶部紧 Angular ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56851936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com