CSS3 Button Facebook
CSS3 Facebook Buttons
The easiest way to make people think: "Wow, this app must be as good as Facebook!".
Buttons
To create the default "button" add a class of uibutton
to any appropriate element. To create the blue variant include an additional class confirm
. To create the green variant include an additional class special
.
<a class="uibutton" href="#">Button</a>
<button class="uibutton" type="submit">Button</button>
<input class="uibutton" type="submit" value="Button">
Larger buttons
To create larger buttons inclue an additional class of large
.
The CSS
The CSS this Buttonuibutton-group
.
/*BUTTON */
.uibutton {
position: relative;
z-index: 1;
overflow: visible;
display: inline-block;
padding: 0.3em 0.6em 0.375em;
border: 1px solid #999;
border-bottom-color: #888;
margin: 0;
text-decoration: none;
text-align: center;
font: bold 11px/normal '
lucida grande', tahoma, verdana, arial, sans-serif;
white-space: nowrap;
cursor: pointer;
/* outline: none; */
color: #333;
background-color: #eee;
background-image: -webkit-gradient
(linear, 0 0, 0 100%, from(#f5f6f6), to(#e4e4e3));
background-image: -moz-linear-gradient(#f5f6f6, #e4e4e3);
background-image: -o-linear-gradient(#f5f6f6, #e4e4e3);
background-image: linear-gradient(#f5f6f6, #e4e4e3);
filter: progid:DXImageTransform.Microsoft.gradient
(startColorStr='#f5f6f6',
EndColorStr='#e4e4e3'); /* for IE 6 - 9 */
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1), inset 0 1px 0 #fff;
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1), inset 0 1px 0 #fff;
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1), inset 0 1px 0 #fff;
/* IE hacks */
zoom: 1;
*display: inline;
}
.uibutton:hover,
.uibutton:focus,
.uibutton:active {
border-color: #777 #777 #666;
}
.uibutton:active {
border-color: #aaa;
background: #ddd;
filter: none;
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
}
/* overrides extra padding on button elements in Firefox */
.uibutton::-moz-focus-inner {
padding: 0;
border: 0;
}
/*Icons */
.uibutton.icon:before {
content: "";
position: relative;
top: 1px;
float:left;
width: 10px;
height: 12px;
margin: 0 0.5em 0 0;
background: url(fb-icons.png) 99px 99px no-repeat;
}
.uibutton.edit:before { background-position: 0 0; }
.uibutton.add:before { background-position: -10px 0; }
.uibutton.secure:before { background-position: -20px 0; }
.uibutton.prev:before { background-position: -30px 0; }
.uibutton.next:before { float:right;
margin: 0 -0.25em 0 0.5em; background-position: -40px 0; }
/* BUTTON EXTENSIONS */
/* Large */
.uibutton.large {
font-size:13px;
}
/* Submit, etc */
.uibutton.confirm {
border-color: #29447E #29447E #1A356E;
color: #fff;
background-color: #5B74A8;
background-image: -webkit-gradient
(linear, 0 0, 0 100%, from(#637bad), to(#5872a7));
background-image: -moz-linear-gradient(#637bad, #5872a7);
background-image: -o-linear-gradient(#637bad, #5872a7);
background-image: linear-gradient(#637bad, #5872a7);
filter: progid:DXImageTransform.Microsoft.gradient
(startColorStr='#637bad',
EndColorStr='#5872a7'); /* for IE 6 - 9 */
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1), inset 0 1px 0 #8a9cc2;
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1), inset 0 1px 0 #8a9cc2;
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1), inset 0 1px 0 #8a9cc2;
}
.uibutton.confirm:active {
border-color: #29447E;
background: #4F6AA3;
filter: none;
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
}
/* Special */
.uibutton.special {
border-color: #3b6e22 #3b6e22 #2c5115;
color: #fff;
background-color: #69A74E;
background-image: -webkit-gradient
(linear, 0 0, 0 100%, from(#75ae5c), to(#67a54b));
background-image: -moz-linear-gradient
(#75ae5c, #67a54b);
background-image: -o-linear-gradient
(#75ae5c, #67a54b);
background-image: linear-gradient
(#75ae5c, #67a54b);
filter: progid:DXImageTransform.Microsoft.gradient
(startColorStr='#75ae5c',
EndColorStr='#67a54b'); /* for IE 6 - 9 */
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1),
inset 0 1px 0 #98c286;
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1),
inset 0 1px 0 #98c286;
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1),
inset 0 1px 0 #98c286;
}
.uibutton.special:active {
border-color: #3B6E22;
background: #609946;
filter: none;
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
}
/*BUTTON GROUPS */
.uibutton-group {
display: inline-block;
list-style: none;
padding: 0;
margin: 0;
/* IE hacks */
zoom: 1;
*display: inline;
}
.uibutton + .uibutton,
.uibutton + .uibutton-group,
.uibutton-group + .uibutton,
.uibutton-group + .uibutton-group {
margin-left: 3px;
}
.uibutton-group li {
float: left;
padding: 0;
margin: 0;
}
.uibutton-group .uibutton {
float: left;
margin-left: -1px;
}
.uibutton-group .uibutton:hover,
.uibutton-group .uibutton:focus,
.uibutton-group .uibutton:active {
z-index:2;
}
.uibutton-group > .uibutton:first-child,
.uibutton-group li:first-child .uibutton {
margin-left: 0;
}
/* BUTTON CONTAINER */
.uibutton-toolbar {
padding: 6px;
border-top: 1px solid #ccc;
background: #f2f2f2;
}
.uibutton-toolbar .uibutton,
.uibutton-toolbar .uibutton-group {
vertical-align: bottom;
}
Grouped buttons
To created grouped buttons wrap them in an element, or use a list, given the class uibutton-group
.
<div class="uibutton-group">
<a class="uibutton" href="#">Dashboard</a>
<a class="uibutton" href="#">Inbox</a>
<a class="uibutton" href="#">Account</a>
<a class="uibutton" href="#">Logout</a>
</div>
<ul class="uibutton-group">
<li><a class="uibutton" href="#">Dashboard</a></li>
<li><a class="uibutton" href="#">Inbox</a></li>
<li><a class="uibutton" href="#">Account</a></li>
<li><a class="uibutton" href="#">Logout</a></li>
</ul>
Mixed groups
To display a toolbar of buttons and grouped buttons, use a wrapping element given the class uibutton-toolbar
.
<div class="uibutton-toolbar">
<a class="uibutton" href="#">Mark as unread</a>
<div class="uibutton-group">
<a class="uibutton" href="#">Report spam</a>
<a class="uibutton" href="#">Delete</a>
</div>
<a class="uibutton" href="#">Unsubscribe</a>
</div>
Buttons with icons
A range of icons can be added (only for links and buttons) by adding a class of icon
and any one of the provided icon classes:
<a class="uibutton icon add" href="#">New message</a>
New message
Class | Example |
---|---|
.edit |
Edit post |
.add |
Add a photo |
.secure |
Private account |
.prev |
Back to messages |
.next |
Get more info |
Browser compatibility
Full support: Firefox 3.5+, Google Chrome, Safari 4+, IE 9+, Opera 11.10+.
Note: Some CSS3 enhancements are not supported in older versions of Opera and IE. The use of icons is not supported in IE 6 or IE 7.