Подтвердить что ты не робот

Исправлен позиционированный заголовок "прыжки" в Google Chrome

http://fundamentaldesigns.us/normal/

Я разрабатываю сайт, и у меня возникла проблема, которой я никогда не сталкивался. У меня есть заголовок с фиксированным позиционированием и высокий индекс z. Секции, расположенные ниже, имеют относительное позиционирование, так что я могу полностью позиционировать элементы внутри них.

Заголовок "перескакивает" при прокрутке в хроме. Я понял, что если я удалю z-index, он исправляет проблему с прыжком, но тогда он не отображается перед другими элементами. Что здесь трюк?

HTML

    <header>
    <div class="inner">
        <img src="images/logo.png" alt="Normal Public Library Foundation" class="logo">
        <nav>
            <ul>
                <li><a href="#whatif">Home</a></li>
                <li><a href="#">2014 Goals</a></li>
                <li><a href="#">Members</a></li>
                <li><a href="#">Donate</a></li>
            </ul>
        </nav>
    </div>
</header>

<div class="whatif section" id="whatif">
    <div class="inner">
        <h1>What if there was no library?</h1>
        <a href="#circulation" class="animated bounce"><img src="images/scroll-arrow.png" alt=""></a>
    </div>
</div>

CSS

header {
position: fixed;
top:0;
width: 100%;
padding: 20px 0;
background-color: #FFF;
opacity: 0.9;
z-index: 999;


-webkit-box-shadow: 0px 1px 7px 0px rgba(50, 50, 50, 0.75);
-moz-box-shadow:    0px 1px 7px 0px rgba(50, 50, 50, 0.75);
box-shadow:         0px 1px 7px 0px rgba(50, 50, 50, 0.75);

.logo {
    float: left;
}

nav {

    float: right;
    margin:8.5px 0;

    ul {
        list-style-type: none;
        padding: 0;
        margin: 0;

        li {
            display:inline;
            font-size: 14px;
            line-height: 20px;
            padding: 0 30px;
            text-transform: uppercase;
        }
    }

}

}

 .section {
height: 800px;
position: relative;

.next {
    position:absolute;
    bottom: 75px;
    left:50%;
    color: #f5f2dc;
    padding: 5px 12px;
    border-radius: 3px;
    background-color: #454545;
    opacity: .5;
    margin-left: -28px;

    &:hover {
        background-color: #565656;
        color: #FFF;
    }
}

 }
4b9b3361

Ответ 1

Этот тип проблемы в Chrome обычно смягчается добавлением следующего объявления CSS в элемент fixed.

-webkit-transform: translateZ(0);

Этот трюк вызывает аппаратное ускорение и повышает производительность.

Ответ 2

Я не знаю, почему и как это работает, но я сделал то, что добавил Марсель, и это не исправило мою проблему.

Поэтому я проигнорировал его и перешел к следующей проблеме масштабирования пользователя и добавил этот метатег:

<meta name="viewport" content="width=device-width, user-scalable=no" />

Как только я добавил, у меня больше не было этой проблемы.