Posts Mentioning RSS Toggle Comment Threads | Keyboard Shortcuts

  • Jay Kwong 7:06 am on June 28, 2010 Permalink | Reply
    Tags: , , ,   

    CSS3 Gradient Buttons 

    button states

    What Is So Cool About These Buttons?

    • Pure CSS: no image or Javascript is used.
    • The gradient is cross-browser supported (IE, Firefox 3.6, Chrome, and Safari).
    • Flexible and scalable: button size and rounded corners can be adjusted by changing the font size and padding values.
    • It has three button states: normal, hover, and active.
    • It can be applied to any HTML element: a, input, button, span, div, p, h3, etc.
    • Fallback: if CSS3 is not supported, it will display a regular button (no gradient and shadow).

    Preview

    The image below shows how the button will display in different browsers.

    preview

    Button States

    • normal state = gradient with border and shadow styles.
    • hover = darker gradient
    • active = gradient is reversed, 1px down, and darker font color as well.

    button states

    General Styles For The Button

    The following code is the general styles for the .button class. I use em value in the padding and border-radius property to make it scalable base on the font-size. To adjust the rounded corners and button size, simply change the border-radius, font-size and padding values. For example: I can make a smaller button by decreasing the font-size and padding values (see demo).

    For more details on border-radius, text-shadow, and box-shadow, read my article The Basics of CSS3.

    .button {
    	display: inline-block;
    	outline: none;
    	cursor: pointer;
    	text-align: center;
    	text-decoration: none;
    	font: 14px/100% Arial, Helvetica, sans-serif;
    	padding: .5em 2em .55em;
    	text-shadow: 0 1px 1px rgba(0,0,0,.3);
    	-webkit-border-radius: .5em;
    	-moz-border-radius: .5em;
    	border-radius: .5em;
    	-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
    	-moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
    	box-shadow: 0 1px 2px rgba(0,0,0,.2);
    }
    .button:hover {
    	text-decoration: none;
    }
    .button:active {
    	position: relative;
    	top: 1px;
    }
    

    button general styles

    Color Gradient Styles

    The code below is the CSS styling for the orange button. The first background line is a fallback for the non-CSS3 browsers, the second line is for Webkit browsers, the third line is for Firefox, and the last line is a gradient filter that is only read by Internet Explorer.

    For more details on CSS gradient, read my article Cross-Browser CSS Gradient.

    .orange {
    	color: #fef4e9;
    	border: solid 1px #da7c0c;
    	background: #f78d1d;
    	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
    	background: -moz-linear-gradient(top,  #faa51a,  #f47a20);
    	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
    }
    .orange:hover {
    	background: #f47c20;
    	background: -webkit-gradient(linear, left top, left bottom, from(#f88e11), to(#f06015));
    	background: -moz-linear-gradient(top,  #f88e11,  #f06015);
    	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88e11', endColorstr='#f06015');
    }
    .orange:active {
    	color: #fcd3a5;
    	background: -webkit-gradient(linear, left top, left bottom, from(#f47a20), to(#faa51a));
    	background: -moz-linear-gradient(top,  #f47a20,  #faa51a);
    	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47a20', endColorstr='#faa51a');
    }
    

    button general styles

    How To Use My Buttons?

    Lets say you like the blue button and want to use it on your page:

    • First, copy the .button and .blue CSS (view demo source code).
    • Then, add to the HTML element where you want the button to be (eg. <a href="#">Button</a>). The CSS classes can be applied to any element such as link, p, span, div, input, button, etc.

    applying

     
  • Jay Kwong 6:54 am on January 22, 2010 Permalink | Reply
    Tags: , , , text-shadow   

    Buttons with CSS3 and RGBA 

    
    .awesome{
    background: #222 url(/images/alert-overlay.png) repeat-x;
    display: inline-block;
    padding: 5px 10px 6px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    line-height: 1;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-box-shadow: 0 1px 3px #999;
    -webkit-box-shadow: 0 1px 3px #999;
    text-shadow: 0 -1px 1px #222;
    border-bottom: 1px solid #222;
    position: relative;
    cursor: pointer;
    }
    
      /* Sizes ---------- */
     .small.awesome {
     font-size: 11px;
     }
    .medium.awesome {
     font-size: 13px;
     }
    .large.awesome {
    font-size: 14px;
     padding: 8px 14px 9px;
    }
    
     /* Colors ---------- */
     .blue.awesome {
     background-color: #2daebf;
    }
     .red.awesome {
     background-color: #e33100;
     }
     .magenta.awesome {
     background-color: #a9014b;
     }
     .orange.awesome {
     background-color: #ff5c00;
     }
    .yellow.awesome {
     background-color: #ffb515;
     }
    

    via ZURB – Super Awesome Buttons with CSS3 and RGBA.

     
c
compose new post
j
next post/next comment
k
previous post/previous comment
r
reply
e
edit
o
show/hide comments
t
go to top
l
go to login
h
show/hide help
esc
cancel