Creazione di menu in CSS

In questa lezione ci eserciteremo a creare menu per siti web. Facciamo come esempio il seguente menu:

Per prima cosa dobbiamo creare la parte HTML. Creiamo un div, posizionandoci all'interno i link del nostro menu:

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>

Come puoi vedere nell'esempio, uno dei link del menu è evidenziato. Simboleggia il fatto che ci troviamo sulla pagina del sito corrispondente a questa voce di menu. Tali pagine sono solitamente evidenziate utilizzando la classe 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>

Ora disponiamo i nostri link in una riga:

css#menu {
  display: flex;
}

Scriviamo gli stili dei nostri link:

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

Aggiungiamo una reazione dei link al passaggio del mouse:

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

L'aspetto del link attivo coincide con l'aspetto del link al passaggio del mouse. Uniamo questi stili insieme:

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

Mettiamo insieme il codice e otteniamo il codice per il nostro menu:

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