菜单上所选选项的 BgColor

BgColor for selected option on the menu

我有这个来自 w3schools.com 的预写代码,我正在努力为选定的选项提供背景颜色。意思是,通过按下其中一个选项,浏览器导航到所选页面,然后在目标页面上,我希望通过给它一个特殊的背景颜色来突出显示该选项以表示显示的页面。

    .navbar {
      overflow: hidden;
      background-color: #333;
      position: fixed;
      top: 0;
      width: 100%;
    }
    
    .navbar a {
      float: left;
      display: block;
      color: #f2f2f2;
      text-align: center;
      padding: 14px 16px;
      text-decoration: none;
      font-size: 17px;
    }
    
    .navbar a:hover {
      background: #ddd;
      color: black;
    }
<div class="navbar">
  <a href="#home">Home</a>
  <a href="#news">News</a>
  <a href="#contact">Contact</a>
</div>

为此,您可以使用 class class="active" 来控制要突出显示的 link。您只需要向目标页面发送一个标志或一个 var 来指示 link 需要激活的内容。这里有一个小例子。

    .navbar {
      overflow: hidden;
      background-color: #333;
      position: fixed;
      top: 0;
      width: 100%;
    }
    
    .navbar a {
      float: left;
      display: block;
      color: #f2f2f2;
      text-align: center;
      padding: 14px 16px;
      text-decoration: none;
      font-size: 17px;
    }
    
    .navbar a:hover {
      background: #ddd;
      color: black;
    }
    .navbar a.active {
      background: white;
      color: black;
    }
<div class="navbar">
  <a href="#home" >Home</a>
  <a href="#news" class="active">News</a>
  <a href="#contact">Contact</a>
</div>

我想你想要这样的东西。您可以使用 :focus pseudo-class:

.navbar {
      overflow: hidden;
      background-color: #333;
      position: fixed;
      top: 0;
      width: 100%;
    }
    
    .navbar a {
      float: left;
      display: block;
      color: #f2f2f2;
      text-align: center;
      padding: 14px 16px;
      text-decoration: none;
      font-size: 17px;
    }
    
    .navbar a:hover {
      background: #ddd;
      color: black;
    }
    
    .navbar a:focus{
      background-color: red;
      font-weight: bold;
    }
<div class="navbar">
  <a href="#home">Home</a>
  <a href="#news">News</a>
  <a href="#contact">Contact</a>
</div>