Определение навигационной панели

We use cookies. Read the Privacy and Cookie Policy

В верхней части страницы определяется навигационная панель:

...

</head>

<body>

. .<!-- Статическая навигационная панель -->

(1) . .<nav class="navbar navbar-default navbar-static-top">

. . <div class="container">

. . . .

. . . .<div class="navbar-header">

(2) . . . . <button type="button" class="navbar-toggle collapsed"

. . . . . . data-toggle="collapse" data-target="#navbar"

. . . . . . aria-expanded="false" aria-controls="navbar">

. . . . </button>

(3) . . . . <a class="navbar-brand" href="{% url 'learning_logs:index' %}">

. . . . . . Learning Log</a>

. . . .</div>

. . . .

(4) . . . .<div id="navbar" class="navbar-collapse collapse">

(5) . . . . <ul class="nav navbar-nav">

? . . . . . .<li><a href="{% url 'learning_logs:topics' %}">Topics</a></li>

. . . . </ul>

. . . .

? . . . . <ul class="nav navbar-nav navbar-right">

. . . . . .{% if user.is_authenticated %}

. . . . . . <li><a>Hello, {{ user.username }}.</a></li>

. . . . . . <li><a href="{% url 'users:logout' %}">log out</a></li>

. . . . . .{% else %}

. . . . . . <li><a href="{% url 'users:register' %}">register</a></li>

. . . . . . <li><a href="{% url 'users:login' %}">log in</a></li>

. . . . . .{% endif %}

? . . . . </ul>

. . . .</div><!--/.nav-collapse -->

. . . .

. . </div>

. .</nav>

Первый элемент — открывающий тег <body>. Тело файла HTML содержит контент, который будет виден пользователям на странице. В точке (1) элемент <nav> обозначает раздел навигационных ссылок на странице. Весь контент внутри этого элемента оформляется по правилам Bootstrap, определяемым селекторами navbar, navbar-default и navbar-static-top. Селектор определяет, к каким элементам страницы должно применяться стилевое правило.

В точке (2) шаблон определяет кнопку, которая будет отображаться, если ширины окна браузера не хватает для горизонтального отображения всей навигационной панели. Когда пользователь нажимает кнопку, навигационные элементы выводятся в раскрывающемся списке. Атрибут collapse сворачивает навигационную панель при уменьшении размеров окна браузера и при отображении сайта на мобильных устройствах с малыми экранами.

В точке (3) имя проекта выводится у левого края навигационной панели. Так как это имя будет присутствовать на каждой странице проекта, оно оформляется в виде ссылки на домашнюю страницу.

В точке (4) определяется набор ссылок для навигации по сайту. Панель навигации фактически представляет собой список, начинающийся с <ul> (5), а каждая ссылка является элементом списка (<li>) ?. Чтобы включить новые ссылки, добавьте строки со следующей структурой:

<li><a href="{% url 'learning_logs:текст %}">Текст</a></li>

Эта строка представляет одну ссылку на навигационной панели. Ссылка берется непосредственно из предыдущей версии base.html.

В точке ? создается второй список навигационных ссылок, на этот раз с использованием селектора navbar-right. Селектор navbar-right оформляет набор ссылок так, что он выводится в правой части навигационной панели, где обычно отображаются ссылки для входа/регистрации пользователя. В данном случае выводится либо приветствие для пользователя и ссылка для выхода, либо ссылки для регистрации и входа. Остальной код этого раздела закрывает элементы, содержащие навигационную панель ?.