JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" type="text/css" href="css/reset.css">
<link rel="stylesheet" type="text/css" href="css/styles.css">
<link rel="stylesheet" type="text/css" href="fonts/font.ttf">
</head>
<body>
<div class="navbar">
<a href="#" class="navbar_item home">Home</a>
<a href="#" class="navbar_item first">first page</a>
</div>
</body>
</html>
CSS
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
width: 100%;
}
.navbar {
display: flex;
justify-content: center;
width: 100%;
background-color: #658680;
position: fixed;
min-height: 50px;
}
.home {
color: white;
text-decoration: none;
font-family: 'FuturaNormal', arial;
font-size: 25px;
}
.first {
color: white;
text-decoration: none;
font-family: 'FuturaNormal', arial;
font-size: 25px;
margin-left: 10%;
}
.navbar_item {
display: flex;
align-items: center;
background-size: 0 0;
position: relative;
color: #000;
position: relative;
overflow: hidden;
}
.navbar_item:before {
content: '';
width: 0%;
height: 3px;
position: absolute;
top: 0;
left: 0;
background: #fff;
transition: width 0.5s 1.5s;
z-index: -1;
}
.navbar_item:hover:before {
width: 100%;
transition: width 0.5s 0s;
}
.navbar_item:after {
content: '';
width: 100%;
height: 0px;
position: absolute;
top: 0;
left: 0;
background: #fff;
transition: height 1s 0.5s;
z-index: -1;
}
.navbar_item:hover:after {
content: '';
height: 100%;
width: 100%;
position: absolute;
top: 0;
left: 0;
background: #fff;
}