← All text tools

CSS button generator

Design buttons with gradients, shadows and hover effects, and copy the CSS.

  • Free
  • No sign-up
  • Works on any device

About CSS button generator

Design a button visually: pick gradient or flat colours, padding, border radius, shadow and hover behaviour, then copy the CSS. Make hover and focus states obvious, and keep text contrast high enough to read. A transition of 150 to 250 milliseconds makes state changes feel smooth.

How to use CSS button generator

  1. Choose colours or a gradient for the button background.
  2. Set the text, padding, border radius, shadow and hover effect.
  3. Copy the CSS and apply the class to your button.

Why use this tool?

Also known as

Frequently asked questions

How do I add a hover effect to a CSS button?

Write a second rule with the :hover selector that changes background, shadow or transform, and add a transition on the base button so the change animates.

How do I make the button accessible?

Keep text and background contrast high and make the click area large enough. Also keep a visible focus style for keyboard users.

Can I use the CSS for a link styled as a button?

Yes. Apply the same class to an anchor tag and add display inline-block and text-decoration none so it looks like the preview.

Is CSS button generator free?

Yes. CSS button generator on Toolipedia is free to use, with no sign-up and no watermark.

Is it safe to use?

Yes. Everything is worked out in your browser, and nothing you enter is sent to our server.

Does it work on my phone?

Yes. It works in any modern browser on Android and iPhone, as well as on tablets and computers. There's nothing to install.

Do I need an account?

No. Just open the page and use the tool. There's no sign-up and no email needed.

Can I put CSS button generator on my own website?

Yes. Use the Embed on your site button under the tool to copy a short piece of code and paste it into your page. It is free, needs no account, and the tool keeps working inside your page.

Related tools