Здравсвуйте,зделал фикированый header на jquery. Заметел что при прокрутки на начале страницы он неприятно дергается. Подскажите пожалуйста,как это можно решить?
$(document).scroll(function() {
if ($(document).scrollTop() > $('.top_header').outerHeight() )
{
$(' .right_nav .reservations a:last-child').hide(300);
} else {
$(' .right_nav .reservations a:last-child').show(200);
}
});
header {
background-color: pink;
position: relative;
}
header .top_header {
text-transform: uppercase;
width: 100%;
position: fixed;
z-index: 2;
font-family: DINPro-Light, sans-serif;
font-size: 1.375em;
line-height: 60px;
color: #fff;
transition: all 0.4s ease;
margin: 0;
}
header .top_header .left_nav {
float: left;
}
header .top_header .left_nav .menu {
display: inline-block;
background-color: grey;
cursor: pointer;
margin-right: -6px;
max-width: 60px;
padding: 0 12px;
}
header .top_header .left_nav .menu img {
padding: 0 8px;
width: 55px;
}
header .top_header .left_nav .tel {
background-color: rgba(0, 0, 0, 0.5);
display: inline-block;
padding: 0 16px;
}
header .top_header .right_nav {
float: right;
}
header .top_header .right_nav .reservations {
display: inline-block;
background-color: #cba673;
padding: 0 15px;
}
header .top_header .right_nav .reservations img {
width: 27px;
}
header .top_header .right_nav .language {
margin-left: -6px;
width: 60px;
padding: 0 9px;
display: inline-block;
background-color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<header>
<div class="top_header">
<div class="left_nav">
<div class="menu">
|||
</div>
<div class="tel">
+38 097 060 05 57
</div>
</div>
<div class="right_nav">
<div class="reservations">
<a href="#">[|||]</a>
<a href="#">Забронировать</a>
</div>
<div class="language">
Eng
</div>
</div>
</div>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
</div>
</header>
Пример на codepen
.reservations a {
vertical-align: middle;
white-space: nowrap;
height: auto !important;
}
$(document).scroll(function() {
if ($(document).scrollTop() > $('.top_header').outerHeight() )
{
$(' .right_nav .reservations a:last-child').hide(300);
} else {
$(' .right_nav .reservations a:last-child').show(200);
}
});
header {
background-color: pink;
position: relative;
}
header .top_header {
text-transform: uppercase;
width: 100%;
position: fixed;
z-index: 2;
font-family: DINPro-Light, sans-serif;
font-size: 1.375em;
line-height: 60px;
color: #fff;
transition: all 0.4s ease;
margin: 0;
}
header .top_header .left_nav {
float: left;
}
header .top_header .left_nav .menu {
display: inline-block;
background-color: grey;
cursor: pointer;
margin-right: -6px;
max-width: 60px;
padding: 0 12px;
}
header .top_header .left_nav .menu img {
padding: 0 8px;
width: 55px;
}
header .top_header .left_nav .tel {
background-color: rgba(0, 0, 0, 0.5);
display: inline-block;
padding: 0 16px;
}
header .top_header .right_nav {
float: right;
}
header .top_header .right_nav .reservations {
display: inline-block;
background-color: #cba673;
padding: 0 15px;
}
header .top_header .right_nav .reservations img {
width: 27px;
}
header .top_header .right_nav .language {
margin-left: -6px;
width: 60px;
padding: 0 9px;
display: inline-block;
background-color: blue;
}
.reservations a {
vertical-align: middle;
white-space: nowrap;
height: auto !important;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<header>
<div class="top_header">
<div class="left_nav">
<div class="menu">
|||
</div>
<div class="tel">
+38 097 060 05 57
</div>
</div>
<div class="right_nav">
<div class="reservations">
<a href="#">[|||]</a>
<a href="#">Забронировать</a>
</div>
<div class="language">
Eng
</div>
</div>
</div>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
</div>
</header>
Ваша проблема в том, что когда блок a
уменьшается в размерах, то текст не влазит и поднимается вверх. Вам нужно указать для блока .reservations
, что бы все элементы в нём всегда стояли в строчку и не вылазили. Для этого можно использовать flexbox
. В вашем случае заменить display: inline-block
на display: inline-flex
:
$(document).scroll(function() {
if ($(document).scrollTop() > $('.top_header').outerHeight() && $(window).width() > 200 /* Настоящий размер: 768 */) {
$(' .right_nav .reservations a:last-child').hide(300);
} else {
$(' .right_nav .reservations a:last-child').show(200);
}
});
header {
background-color: pink;
position: relative;
}
header .top_header {
text-transform: uppercase;
width: 100%;
position: fixed;
z-index: 2;
font-family: DINPro-Light, sans-serif;
font-size: 1.375em;
line-height: 60px;
color: #fff;
transition: all 0.4s ease;
margin: 0;
}
header .top_header .left_nav {
float: left;
}
header .top_header .left_nav .menu {
display: inline-block;
background-color: grey;
cursor: pointer;
margin-right: -6px;
max-width: 60px;
padding: 0 12px;
}
header .top_header .left_nav .menu img {
padding: 0 8px;
width: 55px;
}
header .top_header .left_nav .tel {
background-color: rgba(0, 0, 0, 0.5);
display: inline-block;
padding: 0 16px;
}
header .top_header .right_nav {
float: right;
}
header .top_header .right_nav .reservations {
display: inline-flex; /* Эта строчка */
background-color: #cba673;
padding: 0 15px;
}
header .top_header .right_nav .reservations img {
width: 27px;
}
header .top_header .right_nav .language {
margin-left: -6px;
width: 60px;
padding: 0 9px;
display: inline-block;
background-color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<header>
<div class="top_header">
<div class="left_nav">
<div class="menu">
|||
</div>
<div class="tel">
+38 097 060 05 57
</div>
</div>
<div class="right_nav">
<div class="reservations">
<a href="#">[|||]</a>
<a href="#">Забронировать</a>
</div>
<div class="language">
Eng
</div>
</div>
</div>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Similique deserunt culpa earum, ducimus ab! Doloribus in similique, harum iusto suscipit vero, eos odio laudantium illo, ipsam saepe eius quod beatae.</p>
</div>
</header>
P.S. Не используйте inline-*
. Это не кроссбраузерное значение. Лучше самому указать ширину блока.
Как меняется крипторынок и к чему готовиться владельцам криптообменников
Сейчас есть конфигурация Gulp, в которой все скрипты пишутся в одинcss файл
Естьstyl файл, который импортирует все другие файлы с определенных папок
Как работать с драйвером устройства Штрих-М ФР(Фискальный регистратор), программно? Ни кто не сталкивался? Не понимаю как использовать данную...