Home > database >  HTML color of active tab
HTML color of active tab

Time:02-23

I am creating a web based app, and I am using Spring and Angular. I am writing the front end in the Angular folder, and I have this HTML code to be on every page(app.component.html) - it is a menu:

<div >
  <!-- Centered link -->
  <div >
  </div>
  <div >
    <a routerLink="/home" >Home</a>
    <a routerLink="/login" >Login</a>
    <a routerLink="/register" >Register</a>
  </div>
</div>

And I have this as css so it is centered and looking all nice.

.topnav {
    position: relative;
    background-color: #333;
    overflow: hidden;
  }

.topnav a {
    float: left;
    color: #f2f2f2;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
    font-size: 17px;
  }

.topnav a:hover {
    background-color: #ddd;
    color: black;
  }

.topnav-right {
    float: right;
  }

How do I get it to change the color of the buttons(Home, Login, Register) when I am in the current page? (for ex. when I'm in Home page the button will be green, when in Login - it will be green)

CodePudding user response:

You can use routerLinkActive which will add a CSS class to the element when the route is active.

<div >
  <!-- Centered link -->
  <div >
  </div>
  <div >
    <a routerLink="/home" routerLinkActive="active-link">Home</a>
    <a routerLink="/login" routerLinkActive="active-link">Login</a>
    <a routerLink="/register" routerLinkActive="active-link">Register</a>
  </div>
</div>
.topnav-right a.active-link {
    color: #ff0000;
}
  • Related