Get $500+ of the best After Effects files, video templates and music for only $20!
Design a Beautifully Detailed Web Button

Design a Beautifully Detailed Web Button

Tutorial Details
  • Program: Adobe Photoshop
  • Version: CS5+
  • Estimated Time: 15 minutes

Final Product What You'll Be Creating

Today we’re going back to basics with a simple, elegant, and professional button tutorial from Liam McCabe. Liam creates all sorts of great web elements, so he’s going to be a great guide through the process. If you’ve been looking for a way to spice up your designs with a uniquely styled button or UI element, look no further…

Republished Tutorial

Every few weeks, we revisit some of our reader's favorite posts from throughout the history of the site. This tutorial was first published in February of 2011.

In this tutorial I will be showing you how to design a detailed button using Photoshop. Various useful techniques are used to achieve the pixel perfect design, and it’s a fairly simple process taking no more than 15-20 minutes. The end result can be seen below. Like it? Then let’s get started!


Step 1: Getting Started

First thing you want to do is open up photoshop. Ctrl + N to bring up the new canvas window. The width and height is entirely up to you but make sure the resolution is at least 72 and the color mode is RGB 8 bit. Oh and set the Background contents to transparent. So something like this:

Step 1

Step 2: Fill

Now fill the current layer by pressing Shift + F5 to bring up the fill window and from the drop down menu, select Color… and copy the hex value 141d28 into the box next to the # sign. This should fill the layer with a nice dark blue color.

Step 2

Step 3: Alignment

Now when it comes to designing almost anything, it’s always a good idea to use guides to makes sure everything is nicely aligned. To add a guide slap bang down the middle of the canvas, from the top menu select view -> new guide, then select vertical and input half of whatever your width maybe, for me it’s 250px.

Step 3

Step 4: Rounded Corners

Next you want to select the rounded rectangle tool (from the panel on the left) and draw a nice rectangular shape in the middle of the canvas, like so:

Step 4

I set the background color of the rounded rectangle to a slightly brighter blue, hex value: 17202b. To do this you can either set the foreground color before you draw the rectangle or double click the layer thumbnail color after you’ve drawn the rectangle.

Step 4 - 2

Step 5a: Layer Styling

With the basic shape drawn we are going to add some layer styling. To add styling to a layer simply double click the shape layer and a layer style window will appear. The first style to add is a drop shadow. By using a shadow with the spread value set to 100 we can give the button a 3d feel to it.

(For the following layer styles, feel free to play around with the values and use mine as guidelines)

Step 5

Next style to add is an inner shadow, this will give the button even more 3d feel by adding a shine to the top of the button.

Step 5 - 2

An outer glow simply closes up the top, encompassing the button.

Step 5 - 3

By adding a gradient overlay we can simulate a curved surface, suggesting the shape is more of a pressable object like a button.

Step 5 - 4

The final layer style is a stroke. This gives the whole shape a nice border and gives a bit more definition between the bottom of the shape and the drop shadow.

Step 5 - 5

Step 5b: Gradient Border

Okay that’s the layer styling out of the way. It’s always worth spending time experimenting with the various styles, as you can achieve some very nice effects. If we take a look at our button we can see the very bottom (bottom of the drop shadow) lacks definition and is therefore a slight blur. To fix this we’ll add a nice gradient border.

The first thing to do is to set the foreground color to something around #050607. Create a new layer (ctrl + shift +n) and then hold ctrl and click the shape thumbnail. This is how you select the contents of a layer.

Step 6

Done correctly and you should have a dashed line around your rounded rectangle. Now press G to select the gradient tool and drag from the middle just below the shape outwards like so:

Step 6 - 2

With the shape still selected, switch back to the marquee tool by pressing M and then press up once, and then delete. Now press V which will allow you to move you newly created gradient border and position it at the bottom of the drop shadow like so:

Step 6 - 3

Step 7: Further Detail

To add further detail to the button, duplicate our gradient border layer, position just above the bottom of the shape, invert by pressing ctrl + I and set the blending option to overlay. You may want to duplicate that layer also, just to brighten it up a bit.

Step 7

Step 8: Radial Gradient

Now to add a radial gradient to the top of the button. Like before hold ctrl and click the layer to select the shape. Select the gradient tool (G) and set the foreground color to white. A good tip is to press D which sets the foreground color to black and the background color to white and then X to reverse the colors.

Above the selection drag from the middle outwards much like before, to get the following result:

Step 8

Press ctrl + D to deselect and then set the layer to overlay.


Step 9: Text

Add some text, I chose Arial bold, size 14 smooth and add a slight drop shadow and there you have it! A wonderfully detailed button. Further detail can be added to the drop shadow section (looks a bit plain) and you can also begin to imagine how you could code this up in css with the various states to play with.


Finished!

And that’s it! I hope you enjoyed this tutorial and have fun creating some beautifully detailed buttons :)

Final Result

Add Comment

Discussion 100 Comments

Comment Page 1 of 21 2
  1. Matt Bridges says:

    This is definitely going into my references bookmarks! Fantastic look at the fine details of creating a slick button! Looking forward to more tutorials like this one!

  2. Thanks for posting this, I will have to try this now that I have CS5

  3. silviu says:

    Thanks Liam, great tut!
    I’ve tried making myself some 3d looking buttons, but it was kind’f a disaster cuz i tried making it with the pen tool and also because i didn’t know how to set-up the inner/outer shadows
    yeah … simple, but effective

  4. Pacha Shimansky says:

    You have two “Steps 5″

  5. Brett says:

    THIS IS AMMMAAZZZZINGGG!!! Bestest tutorial EVER!!! I can’t wait to implement this!

  6. Juan says:

    Nice tut, nice button.
    I’m sorry to say, but I think that from Step 5 and on, the explanation is not good.

  7. Kristian Poslek says:

    Love it, now off to create some more states. :)
    Thank you very much!

  8. Alex says:

    Looks very minimal and beautiful :) Good tutorial

  9. MacMechanic says:

    Simple, effective and polished. I much prefer this to the jellied buttons and it shows care in the creation.

  10. This looks really neat. At first glance, the button just looks awesome, then as you go through each step you see how all the detail is created and its pretty cool seeing it come alive. I might use that technique in my next web button set.

  11. Pippin says:

    Beautiful. Simple and easy to follow.

  12. Bjarni Wark says:

    True, a very beautifully designed button, I enjoyed how you got most of the graphical aspect done via layer styles.

  13. krzysztof says:

    Awesome! Great detailed tutorial. Thank you

  14. mingos says:

    IIRC, Jeffrey Way (Nettuts+) did a tutorial on creating a very similar button in pure CSS a few months ago.

    • Tobias Jurga says:

      Not really, they don’t have this 3D effect since you cannot do gradients on borders (AFAIK) :/
      PLUS this works with IE ;)
      but i gotta tell that i only create css3 buttons now

  15. Sidola says:

    Clean, a tad too high for my taste though, here’s one I made a while ago with a similar style.

    http://bit.ly/fcwLMr (Coded version)

  16. Craig says:

    Thanks for the lesson, I’m just learning Fireworks would the process be the same in Fireworks to make this button? Or would there be significant differences?

  17. Kayden says:

    Awesome tut but where do I go from here?
    How do I export it into my website?

    Thanks,

    - Kayden

  18. arnold says:

    cool tutorial but this can be done in many ways :) ,but this is version is much simpler
    , this should be what a *quick tips should be in webdesigntuts

    I hope you make more tuts about Web design interface ,

  19. Liam McCabe says:

    Thanks for all the wonderful comments. Be sure to expect more tutorials from me in the future :)

  20. peter says:

    What do I do with the button now that I have made it, how do I put it on a web page?

    How to make the button change colour when you hover on it in a page?

  21. Xiang Wei says:

    I like the explanation associated with each layer style applied. It’s very helpful.

  22. xm says:

    This button is gorgeous. I would have appreciated a hover and active effect as a wonderful way to complement the tut – for me that’s usually the hardest part to design realistically.

  23. Tim says:

    How do you get the nice bright blue at the bottom of the button? I have been following the tutorial but when i do it that part is a dark blackish color and it has rounded edges and not a simple gradient line.

  24. Very nice button!
    This is more the kind of tutorials i’ve come to expect of Webdesigntuts. More pratical than theoretical. Very nice indeed. Keep up the good work!

    Note: Might want to add what kind of gradient you were using in Step 5 B. I played around a little and used radial gradient using the color to transparent.

  25. gyvulius says:

    wow a “button” tutorial. Looks like you guys don’t have time for some tutorials, or this website going down to ultra beginers.

    • Hi Gyvulius,

      We publish tutorials ranging from beginner to advanced… this one would obviously fall under the beginner/intermediate category. It’s short, focuses on some practical techniques with a bit of a twist, and it doesn’t require an hour to complete… which is probably why so many people have liked it so much already. It’s also really easy to integrate into an existing project if you just want to upgrade your navigation system or one particular button. We have plenty of more advanced tutorials already on the site and on the way, but it’d be unfair to only publish advanced stuff when so many of our readers appreciate these little quick tuts too. Thanks for your feedback though – we hear ya loud and clear on wanting some heavier tuts and we’ll have a couple of them in the next week or two ;)

  26. Malik says:

    Beautiful button, nice piece for inspiration ! :) Congrats!

  27. Chris says:

    I think a part is missing.. In step 5b you mention selecting a foreground color of #050607 but not what the background color should be. I don’t seem to be getting the same gradient as you with the #050607 and black as background so maybe I’m missing something..

    Just nitpicking now but.. it also looks like you bump the marquee up 2px instead of 1px because your lines appear thicker.

    Great tutorial though I was wondering how to make that 3D effect with a style. Thanks a bunch for sharing.

    Chris

  28. Adam says:

    I will definitely use some of these techniques in my next project ;-)

  29. Hayden says:

    This is probably one of the best explained tutorials Ive ever seen on a evato site. Ive lost count on how many tutorials I can’t finish because of skipped steps or not being clear.

  30. alex says:

    Great. I’d love to see more tutorials about designing elements for web (buttons, interfaces, boxes etc)

  31. Next step: do it in css?

  32. chris says:

    nice buttons.. love this one..

  33. Oh and the greatest tip about your tut is to think of how everything plays into the picture, from the different textures to how all these elements affect one another…when I realized this it totally changed my perspective about painting..and still does.

    Definitely a great tutorial!

  34. Kudos! The button looks very nice; very sleek. Personally, I prefer to design my buttons with CSS, especially now with CSS 3, but it is still a great-looking button.

    I would love to see more design tutorials like these, including CSS design tuts!

  35. Ching says:

    Simple design, beautiful and it stands out, hurray!!!!

  36. Rory says:

    Beautiful button Liam nice work.

  37. Liam McCabe says:

    Thank you everyone for the kind words =)

  38. Ludebo says:

    I Like it!!!
    I’ve created the same button in fireworks :)
    This is the link http://www.ludebo.com/fw/fw_btt.jpg

  39. This tutorial is great because it really does take you back to basics. I’ve always loved starting with buttons for a website. It gives you definition, and helps to create a color scheme, and overall layout. Very nice tutorial.

  40. Alex P says:

    Definetly one of the best tutorials out there, you have no idea how much i struggle to come up with nice clean buttons for my sites, like everything else looks nice but my buttons are always looking somewhat cheezy lol, now with this tutorial I pretty much know what to do, I played around with it so all my buttons don’t look the same and they all look perfect, i have a better understanding on how to achieve a good professional clean button thanks to you Liam.

  41. Kevin says:

    Very nice tutorial and a great looking button. You might convince me to switch from Fireworks yet =)

  42. w1sh says:

    Hey Brandon, this kid has passion about this stuff. I’d like to see what other little tricks like this he picks up in the near future.

    Nice tut kid.

  43. iMatt says:

    Nce, clean and easy button! Nicely done!

  44. ADRIÀ says:

    Ei,

    thanks,

    that’s a clever and goodlooking tutorial!.

    Hope for more!.

  45. Dave says:

    Decent tutorial for those wanting to learn the fundamentals of creating basic 3d-type elements. As others have pointed out, I would definitely add more detailed step-by-step instructions next time. It couldn’t hurt to have someone in your target audience go through it and follow specifically with what you’ve written. This type of user-testing will yield a far more illustrative and informative session and may even help you develop your own teaching skills.

    FWIW – you can also specify the position of guides with percentages (50%), not just pixel values :)

  46. geekfabric says:

    Thank’s a lot for this tut.
    I’ve just done it and it looks like the final product picture, I’m very happy.
    Would be nice if you could explain also how to css it and make the HOVER-CLICK effect!
    Geekfabric

  47. Ricky says:

    Thanks for the tutorial. But I’m being stuck at the 5B step, where press M, Up, Del and V. Then I don’t know how to continue :(. I’m just a newbie in Photoshop. Can you help me? Thank you very much.

  48. Brian says:

    Nice post, Liam. I like seeing how other designers do things.

  49. V-Light says:

    Wow! Thanks! Very cool!
    It inspirired me to create a WEB version (CSS3 only)
    http://jsfiddle.net/vLight/7B2Et/2/ (code)
    http://jsfiddle.net/vLight/7B2Et/2/embedded/result/ (result only)

  50. S3bY says:

    So simple and yet with an outstanding outcome!

  51. Alec says:

    Awesome tutorial, however I am completely lost at step 5. I just don’t get the new layer with the gradient and how you have to press V and move it somewhere. An image with the place where the new layer should be would be just great, this step is ruining it –’ Great job otherwise!

  52. Saira says:

    Great tutorial!! Absolutely loved it!! I was looking to learn how to make simple button..Whilst following the tutorial I experimented a little and came up with something I really love…and its all thanks to you :D

  53. Bhavesh says:

    Simple and mazing tutorial…..I am gonna try it….

  54. Sean says:

    Love the button and an awesome tutorial, some parts could be explained a ton better, but very nice.

  55. Ahsan Idrisi says:

    Lovely and great article i have read in ages..

  56. Thanks for the tut! It would’ve been interesting for readers to mention the “Snap to pixels” option for the rounded rectangle tool. This allows you to draw crisp rectangles every time!

  57. nikko says:

    Pretty good look button, but I get lost at step 5b. I end up with a rectangle filled with dark gradient. I have no idea how to achieve the gradient border. I followed the tutorial three times and I can’t figure out what I do wrong.

    It seems to me like something’s missing in this paragraph:
    The first thing to do is to set the foreground colour to something around #050607. Create a new layer (ctrl + shift +n) and then hold ctrl and click the shape thumbnail. This is how you select the contents of a layer.

    That’s exactly what I do, then I select gradient tool and apply it as it’s described, which fills the whole rectangle selection in the new layer with the gradient (not sure if it’s supposed to be like this)

    In the next paragraph:
    With the shape still selected, switch back to the marquee tool by pressing M and then press up once, and then delete. Now press V which will allow you to move you newly created gradient border and position it at the bottom of the drop shadow like so.
    This is propably the hardest part of all, I don’t what to do at all. Why should I select marque tool, pressing and then deleting sth?
    Could anyone please explain this to me in more detail. Thank you :-)

    • dizeyner says:

      that area got me at first too…and the missing step is in the gradient control to select radial from the menu. for the other item..making the button edge..I did get lost here a bit at first because I couldnt see and then when I reversed my steps I went, OH its there. lol.

      for the dino commenter, a great tutorial is worth repeating. for me, this is fresh, and yes, there is always more than one way to do the same thing. I could do this in fireworks, but I really enjoyed learning the technique for photoshop and VERY much appreciated the tool tips that were delivered painlessly throughout.

      got more great things like this in the archive? do it again! Im new!

      thanks again for the tut.

  58. Kim says:

    Are you using a pc? Because when I try to select the layer in step 5B it wants me to either rasterize the vector mask or delete it.

  59. Yongning Liang says:

    Great Work!

  60. Yana says:

    “Now press G to select the gradient tool and drag from the middle just below the shape outwards like so:”

    “With the shape still selected, switch back to the marquee tool by pressing M and then press up once, and then delete. Now press V which will allow you to move you newly created gradient border and position it at the bottom of the drop shadow like so:”

    est…

    this doesnt work in photoshop cs4, you cannot work on fx effects, layer is basicly locked for new effects. disappointment to the max.

  61. Henry says:

    Brilliant tutorial! I love the final result :)

  62. pauch says:

    great. ^_^
    Thanks a bunch :)

  63. What followed the dinosaur? It’s tail!

  64. Arek says:

    “Upload” FBI will get you ;-)

  65. Janne says:

    Republished by a mistake?
    Still a neat button though. I also prefer using subtle effects in my designs :)

  66. Alberto says:

    This is a really good article to be revisited!

    Thanks!

  67. Malik says:

    Very nice ! I’ll test this as soon as I can ! Greets !

  68. Noorani says:

    Thank you for this tut. I am new to Photoshop. I could learn many tools from this tutorial. Bookmarked.

  69. Claude Meri says:

    I think it’s a very cool tutorial with a very different approach.

    Nice.

  70. dizeyner says:

    this is a great tutorial!

    I used to use photoshop, but then switched to fireworks several years ago. now, Im trying to get back into pshop as well and tutorials like this are very helpful.

    The smart keystrokes are very helpful and a plus. only thing missing for me, is how to set the corners to a curve that I want. I can do this in fireworks, but I cant figure out how to do it in photoshop.

    For example, the rectangle I redrew six times and couldnt get it to reduce the curve to look like yours. and I would have preferred a less rounded corner than I ended up with. oddly I think one has to do it with the plain rectangle tool, but dont quote me, and either way, pshop should allow the user to change the corner. its my only peeve but admittedly probably user error on my part.

    anyway, Ive been in this business for over 15 years and sometimes its really hard to keep up with the ever changing software, let alone relearning new techniques. SO, thank you very much for this tut. LOVED IT!

    Dizeyner

  71. dizeyner says:

    oops one more note to anyone that got caught regarding press control and the shape…Im on a mac using CS5 and so I had to use command shift I believe. coupla keystrokes were like that. always good to note if the tut is given from PC or mac perspective so we can adjust. :-)

  72. Paul Weston says:

    Designing buttons and navigation is an area of my design that I am always looking to expand and improve on. This article is brilliant and will act as a constant reference for me in the future. I thought this was a great tutorial and the look of the button is fantastic. I love the use of colour and shadows which bring the button to life. I will be using and experimenting with this tutorial to see what I can create to improve my future designs. Great tutorial and I look forward to reading more from you.

  73. Can you tell us more about this? I’d want to find out some additional information.

  74. Paul CRUSE says:

    Hi,

    Does it possible with the CS4 version ?

    Thanks.

Comment Page 1 of 21 2

Add a Comment