Creating an "Old School" button with CSS

Let's find out how to create an original button that's right up to date!
•
Updated on August 14, 2026
•
2 min read
Believemy logo

"Old School" but so trendy, let's discover how to create an original and clearly up-to-date button!

Image

 

Step 1

Let's start with the HTML code.

HTML
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css">
HTML
<div class="container">
  <a href="#">Read the article</a>
  <i class="fas fa-arrow-right"></i>
  <div class="bg"></div>
</div>

In this small project, we will use the font-awesome library. It allows us to easily add icons thanks to the fas fa-arrow-right class.

 

Step 2

Let's use the "Lobster" font from Google Fonts.

CSS
@import url('https://fonts.googleapis.com/css2?family=Lobster&display=swap');

We will also use a quite "Old School" font from Google Fonts. This font will give a huge touch to our link.

 

Step 3

Let's style the .container class and its link.

CSS
.container {
  font-size: 2rem;
  color: white;
  position: absolute;
  cursor: pointer;
}

.container a {
  color: white;
  text-decoration: none;
  font-family: 'Lobster', cursive;
}

 

Step 4

Let's move on to the icon and the button's hover effect.

CSS
.container i {
  margin-left: 5px;
  font-size: 1.2rem;
  transition: all .5s;
}

.container a:hover ~ i {
  transform: translateX(5px);
}

 

Step 5

Let's handle the link's border.

CSS
.bg {
  position: absolute;
  bottom: 3px;
  left: -4px;
  border-radius: 10px;
  width: 25%;
  height: 25%;
  z-index: -1;
  background-image: linear-gradient(147deg, #FFE53B 0%, #FF2525 74%);
  transition: all .5s;
}

We give our list a simple look: it has no bullets and we ensure that each list item is wrapped in a full block with margins and a background.
The z-index: 5 will allow us in the next step to overlay the small border on the left side relative to the text, without it covering the entire item on hover (it is actually a pseudo-element ::before).

 

Step 6

Let's enlarge the border on hover.

CSS
.container a:hover ~ .bg {
  width: 85%;
}

When the user's mouse hovers over our link, we will enlarge the border width to 85%. This effect combined with our icon moving to the right allows us to finish the button.

Category: Developers

Share this article

Want to help us? Share this article on your networks or even better: on your site, in an article or in your newsletter.

Believemy logo
Comments (0)

You need to be logged in to comment on this article: log in or sign up.

Read next

Create an animated "rainbow" button with CSS

In this article, we'll show you how to create a rainbow button that comes to life when the mouse hovers over it. A modern and sensational effect guaranteed!

December 9, 2024

Creating a NEON button with CSS

Creating a button is one thing! But creating a button that your visitors want to click is something else entirely. In any case, this neon button will catch the eye of everyone who visits your pages.

December 9, 2024

Creating a button with a "fill" effect using CSS

In this article, we'll be taking a look at the secret to achieving this "filling" effect on a button!

December 9, 2024

Create an "architectural" design button using CSS

Creating a button where the borders split in two on hover may seem complicated, but nothing could be easier! Let's find out how in this article.

December 9, 2024

Create an animated 3D button using CSS

In this article, we'll find out how to create a three-dimensional button that will add a touch of softness and perspective to your projects!

December 9, 2024

Creating circled buttons on hover with HTML and CSS

For a menu or to encourage your readers to share your website, share buttons are essential elements to add to your website. Let's find out how to make them more modern with a "neon" effect that will surround the icon selected by your user.

December 9, 2024

Creating a sinking button with CSS

The buttons on a site are the main triggers for action: styling them and making them dynamic is very important in your development process! That's the aim of this article.

December 9, 2024

Creating an animated list with CSS

Let's find out how to create an animated hover list!

December 9, 2024

Become the solopreneur you dream of being.

First project, career change, business launch: access our courses, practice on real-world cases, and move forward with clear guidance.