Design Shack showcases inspiring web design, alongside resources and tutorials for you to succeed in the same way. It is brought to you by David Appleyard, a freelance designer who is available for work.
For the second part of our series on CSS3, we’ll be taking a look at borders. Everyone who uses CSS is familiar with the border property - it’s a great way to structure content, create effects around images and improve page layout.
CSS3 takes borders to a new level with the ability to use gradients, rounded corners, shadows and border images. We are going to look at each of these in a bit more detail, using examples where possible.
All the examples shown below can be seen at our CSS3 examples page. Many, however, can only be appreciated in the latest builds of various browsers:
Achieving rounded borders using current CSS coding can be tricky - there are numerous methods available, but none are extremely straight forward. Creating individual images for each border is often needed in addition. Using CSS3, creating a rounded border is incredibly easy. It can be applied to each corner or individual corners, and the width/colour are easily altered. The CSS code is:
1 2 3 4 5 6 7 8 | .border_rounded { background-color: #ddccb5; -moz-border-radius: 5px; -webkit-border-radius: 5px; border: 2px solid #897048; padding: 10px; width: 310px; } |

Gradient borders can look effective if used correctly. This code is a little more complex, requiring you to define each colour of the gradient. The CSS code is:
1 2 3 4 5 6 7 8 9 | .border_gradient { border: 8px solid #000; -moz-border-bottom-colors:#897048 #917953 #a18a66 #b6a488 #c5b59b #d4c5ae #e2d6c4 #eae1d2; -moz-border-top-colors: #897048 #917953 #a18a66 #b6a488 #c5b59b #d4c5ae #e2d6c4 #eae1d2; -moz-border-left-colors: #897048 #917953 #a18a66 #b6a488 #c5b59b #d4c5ae #e2d6c4 #eae1d2; -moz-border-right-colors:#897048 #917953 #a18a66 #b6a488 #c5b59b #d4c5ae #e2d6c4 #eae1d2; padding: 5px 5px 5px 15px; width: 300px; } |

Adding a shadow to an element is difficult at present - it is a good way to differentiate a certain area, but as with any effect, it should be used sparingly. The CSS code is:
1 2 3 4 5 | .border_shadow { -webkit-box-shadow: 10px 10px 5px #888; padding: 5px 5px 5px 15px; width: 300px; } |

Border images are one of the most useful additions - I’m really looking forward to discovering how people choose to use them. CSS has the ability to repeat, or stretch a border image as you choose. The CSS code is similar to the following (it varies between browsers at present):
1 2 3 | .border_image { -webkit-border-image: url(border.png) 27 27 27 27 round round; } |

Borders are revolutionized! These additions in CSS3 are bound to save you a huge amount of time as a designer. They go a long way towards simplifying layouts and allow you to create visually appealing boxes without even opening Photoshop.
The next article in this series will be expanding on a new area in CSS3, Text Effects. Remember, to see live examples of these features, take a look at our CSS3 example page.
None work with IE 7 and Shadow and Image boders don’t even work in Firefox 2 (of which I downloaded the latest version last week).
It is always better to use older coding since most browsers are backwards compatible with older code.
It’s very hard for web designers to make top notch design using new approaches, since you’re so limited by older versions of browsers. You have to make sure the website degrades gracefully. But this takes too much time.
At present, CSS3 is certainly not supported by most major browsers. The only two which do support most of these are Safari 3 and Firefox 3 Beta. Until the various modules are completed, browsers won’t implement them.
This is a guide which will hopefully give you a preview of what to expect when CSS3 does start to be more widely supported.
For In-House projects I completely rely on Firefox. There is no time to lose and I want CSS3. Remember these old buttons “optimized for Netscape 0.1″? That`s what I do…I try to pull all my visitors away from IE or other lame browsers.
The border image is something that is needed today. I’m really glad it will be implemented.
Thanks for this work, it can be very useful
@Virgil: You can use CSS3 as a “progressive enhancement” for now. It won’t affect the look in browsers that don’t support CSS3, but the browsers which do will get a little something extra.
As CSS3 builds off of the CSS2 specs, it will gracefully degrade.
Thanks for the articles, great intro.
I can forsee some awful implementation of images in borders though ;)
You are using “-moz-border-radius” and “-webkit-border-radius” which is not part of the CSS3 standard. Standard is “border-radius”.
can you describe the border-image property better?
[...] through an overview of CSS3 in plain-speak and talks about some CSS3 techniques and topics such as borders and text [...]
[...] Introduction to CSS3 - Part 2: Borders [...]