Files
freeCodeCamp/curriculum/challenges/ukrainian/01-responsive-web-design/applied-visual-design/lock-an-element-to-the-browser-window-with-fixed-positioning.md

3.4 KiB
Raw Permalink Blame History

id, title, challengeType, videoUrl, forumTopicId, dashedName
id title challengeType videoUrl forumTopicId dashedName
587d781e367417b2b2512acc Заблокувати елемент у вікні браузера з фіксованим розташуванням 0 https://scrimba.com/c/c2MDNUR 301061 lock-an-element-to-the-browser-window-with-fixed-positioning

--description--

Наступна схема, яку пропонує CSS - позиція fixed, яка є категоричним позиціонуванням, що блокує елемент відносно вікна браузера. Схоже до абсолютного розташування, він використовується властивостями зміщення CSS, а також видаляє елемент із стандартного потоку документів. Інші позиції більше не "реалізуються" там, де вони розташовані, що може вимагати деякого коректування макета в інших місцях.

Одна ключова різниця між позиціями fixed та absolute - елемент з фіксованою позицією не переміститься при прокрутці.

--instructions--

Навігаційний рядок в коді позначений з id navbar. Змінити position на fixed і компенсувати 0 пікселів top та 0 пікселів eft. Після того, як ви додали код, прокрутіть до попереднього перегляду вікна, щоб побачити як навігація залишається на місці.

--hints--

Елемент #navbar повинен мати position встановлену як fixed.

assert($('#navbar').css('position') == 'fixed');

Ваш код повинен застосовувати top CSS offset в 0 пікселів на елементі #navbar.

assert($('#navbar').css('top') == '0px');

Ваш код повинен використовувати left CSS 0 пікселів на елемент#navbar.

assert($('#navbar').css('left') == '0px');

--seed--

--seed-contents--

<style>
  body {
    min-height: 150vh;
  }
  #navbar {



    width: 100%;
    background-color: #767676;
  }
  nav ul {
    margin: 0px;
    padding: 5px 0px 5px 30px;
  }
  nav li {
    display: inline;
    margin-right: 20px;
  }
  a {
    text-decoration: none;
  }
</style>
<body>
  <header>
    <h1>Welcome!</h1>
    <nav id="navbar">
      <ul>
        <li><a href="">Home</a></li>
        <li><a href="">Contact</a></li>
      </ul>
    </nav>
  </header>
  <p>I shift up when the #navbar is fixed to the browser window.</p>
</body>

--solutions--

<style>
  body {
    min-height: 150vh;
  }
  #navbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #767676;
  }
  nav ul {
    margin: 0px;
    padding: 5px 0px 5px 30px;
  }
  nav li {
    display: inline;
    margin-right: 20px;
  }
  a {
    text-decoration: none;
  }
</style>
<body>
  <header>
    <h1>Welcome!</h1>
    <nav id="navbar">
      <ul>
        <li><a href="">Home</a></li>
        <li><a href="">Contact</a></li>
      </ul>
    </nav>
  </header>
  <p>I shift up when the #navbar is fixed to the browser window.</p>
</body>