How to Make a Button in HTML: A Simple Guide for Beginners

By Cristian G. Guasch •  Updated: 09/18/23 •  8 min read

I’ll bet you’ve seen a variety of websites with fantastic buttons urging you to click them. Ever wondered how to create one for yourself? Let’s unravel the mystery together, as I guide you through the process of making an HTML button.

HTML (HyperText Markup Language) is the backbone of any website we visit daily. Among its diverse features is the ability to create interactive buttons that are not only visually appealing but also enhance user navigation experience significantly. Don’t worry if this sounds complex; I promise it’s easier than it seems!

Creating an HTML button doesn’t require extensive coding knowledge or prior programming experience. All it takes is understanding a few key HTML elements and attributes, and before you know it, you’ll be designing custom buttons like a pro! Buckle up as we’re about to embark on this exciting journey into the world of HTML coding.

Diving headfirst into the world of web development, one cannot ignore the critical role that HTML plays. It’s like the skeleton of any website, providing structure and form to all those beautiful pages we enjoy browsing daily.

You might wonder, what is HTML? In simple terms, it’s short for HyperText Markup Language. This language comprises tags and attributes that help in structuring the content on a page. For instance, to make a button in HTML, you’d use something as straightforward as this:

<button type="button">Click me!</button>

Simple isn’t it? That’s the beauty of HTML; it doesn’t take much to get started! But don’t let its simplicity fool you. Even though creating a button might seem elementary, there are numerous ways we can modify and enhance it using other languages such as CSS and JavaScript.

Take this example,

<button type="button" style="font-size:20px;">Big Clicky Button!</button>

By adding just a bit more information through an attribute (style), I’ve altered how our friendly button appears on screen!

HTML has had several versions over time with each introducing new features. As of now, we’re at HTML5 which brought along goodies like semantic elements (like <article><nav> etc.) aiding both developers and search engines understand better what content lies within them.

To sum things up:

Now that we’ve scratched the surface about understanding HTML let’s dive deeper into how exactly you go about making your very own clickable button!

Deeper Dive into HTML Buttons

Let’s dive in, shall we? When it comes to creating buttons in HTML, you’ve got a couple of options. The most straightforward way is to use the <button> tag. This element creates a clickable button on your webpage. Here’s how it works:

<button>Click Me!</button>

In the above example, “Click Me!” is the text that’ll be displayed on the button. Simple enough, right? But what if you want to do something when the button is clicked? That’s where JavaScript comes into play.

<button onclick="myFunction()">Click me</button>

In this case, myFunction() is a JavaScript function that gets executed when the button is clicked.

But let’s not forget about our old friend—the humble <input> tag! With its type attribute set to ‘button’, <input> can also create buttons:

<input type="button" value="Click me">

The ‘value’ attribute here determines the button’s label. While using an input tag for creating buttons may feel a bit old school now, it does offer some flexibility with styling and behavior customization.

There are other variations too! For instance, submit buttons and reset buttons can be created using <input> with types ‘submit’ and ‘reset’:

<form action="">
  <input type="text" placeholder="Your name">
  <input type="submit" value="Submit">
  <input type="reset" value="Reset">

In these examples, clicking ‘Submit’ sends form data to a server while hitting ‘Reset’ clears all form fields.

Remember though – no matter which method you’re employing for creating HTML buttons—whether it’s using plain old <button>, or good ol’ “type=‘button’”, it’s all about the result. It’s important to have a clear idea of what you want your button to do, and then choose the most appropriate method for creating it. After all, in web design (as in life), there’s more than one way to skin a cat! Creating a basic HTML button might seem like a daunting task, but trust me, it’s not! All you need is some simple HTML code and you’re good to go.

First off, let’s understand what an HTML button actually is. It’s a clickable element that users interact with on web pages or forms to initiate actions like submitting data or navigating to another page. This guide will walk you through the process of creating your very own.

Now, onto the first step. Start by opening your text editor – this could be Notepad, Sublime Text, Visual Studio Code, or any other of your choice. Then create a new HTML document if you haven’t got one already opened.

As we dive into the actual coding part now! The simplest way to create an HTML button is by using the <button> tag. Here’s how:

<button>Click Me!</button>

That’s it! You’ve just created a basic HTML button that displays “Click Me!” when viewed in a browser.

But wait! There’s more. Want to jazz up that plain old button? We can do so by adding some CSS styling inside our <style> tags in the head section of our HTML document:

  button {
    background-color: #4CAF50;  /* green */
    border: none;
    color: white;
    padding: 15px 32px;
    text-align: center;
    display: inline-block;
    font-size: 16px;

<button>Click Me!</button>

Your Button is now decked out in green and white with nice padding around it!

HTML buttons can also perform actions when clicked thanks to JavaScript event handlers such as onclick. Let’s take a look at how we can use this attribute:

<button onclick="alert('You clicked me!')">Click Me!</button>

Now when you click the button, a popup alert saying “You clicked me!” will appear.

Remember, while buttons are simple HTML elements, they’re incredibly versatile and have numerous applications. You can experiment with different styles and actions to find what works best for your needs. Have fun coding!

Customizing Your HTML Button for Better User Experience

Diving deep into the world of web design, I’ve noticed how crucial it is to customize your HTML buttons. Not only are they a key point of interaction, but they can also significantly enhance a user’s experience on your site.

Let’s start with the basics: colors and sizes. You can easily alter these aspects using CSS (Cascading Style Sheets). For example:

<button style="background-color: blue; color: white; padding: 14px 20px;">Click me!</button>

Here, we’ve created a button that has a blue background, white text color, and additional padding for better clickability.

Don’t stop there though! It’s important to consider hover effects. These help indicate to users that the button is indeed clickable. A simple hover effect changes the background color when the mouse hovers over it:

.button:hover {
    background-color: green;

<button class="button">Hover over me!</button>

Mind you, this isn’t just about aesthetics. Customizing your buttons can increase usability and accessibility too. Take font size for instance – larger fonts are easier to read for people with visual impairments:

<button style="font-size: 24px;">Big Text Button</button>

Next up on my list is adding icons which can provide extra clarity:

<button><img src="icon.png" alt="Icon"> Icon Button</button>

Lastly, why not add some animation? Animated buttons tend to attract attention and encourage clicks:

@keyframes move {
    from {left: 0px;}
    to {left: 200px;}

.button {
    position: relative;
    animation-name: move;
    animation-duration: 5s;

<button class="button">Animated Button</button>

Bear in mind, customizing your HTML buttons isn’t a one-size-fits-all formula. It’s about understanding your user base, testing out different options, and seeing what works best for you!

Cristian G. Guasch

Hey! I'm Cristian Gonzalez, I created HTML Easy to help you learn HTML easily and fast.

Related articles