Навігація списком

2 хв. читання

Дійшовши до створення меню навігації, більшість web-розробників реалізують код таким чином:

    <nav>
    	<ul>
    		<li><a href="#">Home</a></li>
    		<li><a href="#">Products</a></li>
    		<li><a href="#">Services</a></li>
    		<li><a href="#">About Us</a></li>
    		<li><a href="#">Contact Us</a></li>
    	</ul>
    </nav>

Ті, хто ще не емігрував з HTML4, скористаються

Питання: Чи потрібно розміщувати елементи списком?

Звичайні посилання більш компактніші і чисті.

    <nav>
    	<a href="#">Home</a>
    	<a href="#">Products</a>
    	<a href="#">Services</a>
    	<a href="#">About Us</a>
    	<a href="#">Contact Us</a>
    </nav>

До HTML5, списки були необхідні:

  • тому що старі браузери могли "боротися" з вбудованими елементами стилю

  • сусідні посилання могли викликати проблеми доступності при читанні з екрану

  • ви повинні були вставити навігацію куди-небудь - списки були гарним варіантом

Ці питання зникли з появою HTML5 елемента

Тим не менш, є ряд вагомих причин, щоб продовжувати використати списки:

  1. Для визначення ієрархічного меню або підменю. Немає ніяких причин не використати інші елементи, хоча є кілька переваг, наприклад:
    <nav>
    	<h1>Main Menu</h1>
    	<a href="#">Home</a>
    	<a href="#">Products</a>
    	<section>
    		<h2>Product Menu</h2>
    		<a href="#">Product One</a>
    		<a href="#">Product Two</a>
    	</section>
    	<a href="#">Services</a>
    </nav>
  1. Списки надають додаткові елементи для CSS.

  2. Списки - це широко застосовуваний метод і розробники знають як з ним працювати і що від нього очікувати.

Навігація списком міцно увійшла в розробку як один з основних методів. Але, що чекає нас в майбутньому?

Помітили помилку? Повідомте автору, для цього достатньо виділити текст з помилкою та натиснути Ctrl+Enter
Codeguida 5.8K
Приєднався: 8 місяців тому
Коментарі (1)
  1. leofun01
    <a href="#">Home</a>

    Це приклад того як не можна робити. Не залишайте id порожніми. Залишайте хоча би так: <a href="#home">Home</a> І якщо навігаційне меню є списком, то ul>li*>a або ol>li*>a має бути обовязково.

    7 місяців тому ·
    0
Щоб залишити коментар необхідно авторизуватися.

Вхід / Реєстрація