Crearea meniurilor în CSS

În această lecție vom exersa crearea meniurilor site-urilor. Să facem de exemplu următorul meniu:

Pentru început trebuie să creăm partea HTML. Să facem un div, plasând în el linkurile meniului nostru:

html<div id="menu">
  <a href="#">link text 1</a>
  <a href="#">link text 2</a>
  <a href="#">link text 3</a>
  <a href="#">link text 4</a>
  <a href="#">link text 5</a>
</div>

După cum vedeți în exemplu, unul dintre linkurile meniului este evidențiat. Acesta simbolizează faptul că ne aflăm pe pagina site-ului corespunzătoare acelui element de meniu. Astfel de pagini sunt în mod obișnuit evidențiate folosind clasa active:

html<div id="menu">
  <a href="#">link text 1</a>
  <a href="#" class="active">link text 2</a>
  <a href="#">link text 3</a>
  <a href="#">link text 4</a>
  <a href="#">link text 5</a>
</div>

Acum să aranjam linkurile noastre într-un rând:

css#menu {
  display: flex;
}

Să scriem stilurile pentru linkurile noastre:

css#menu a {
  margin-right: 5px;
  padding: 10px;
  font: 15px Arial;
  text-decoration: none;
  color: #1437AD;
  border: 1px solid #1437AD;
  background-color: white;
}

Să facem ca linkurile să reacționeze la hover:

css#menu a:hover {
  color: blue;
  border: 1px solid blue;
  background-color: #F5F6FA;
}

Aspectul linkului activ coincide cu aspectul linkului la hover. Să combinăm aceste stiluri împreună:

css#menu a:hover, #menu a.active {
  color: blue;
  border: 1px solid blue;
  background-color: #F5F6FA;
}

Să asamblăm codul împreună și vom obține codul pentru meniul nostru:

html<div id="menu">
  <a href="#">link text 1</a>
  <a href="#" class="active">link text 2</a>
  <a href="#">link text 3</a>
  <a href="#">link text 4</a>
  <a href="#">link text 5</a>
</div>
css#menu {
  display: flex;
}
#menu a {
  margin-right: 5px;
  padding: 10px;
  font: 15px Arial;
  text-decoration: none;
  color: #1437AD;
  border: 1px solid #1437AD;
  background-color: white;
}
#menu a:hover, #menu a.active {
  color: blue;
  border: 1px solid blue;
  background-color: #F5F6FA;
}
Задание 1
Задание 2
Задание 3