基于CSS3的漂亮按钮

jerry PHP 2015年11月18日 收藏
使用CSS3来制作圆角阴影、渐变色的漂亮按钮,不需要任何图片和javascript脚本,只需要CSS3就可以轻松实现按钮效果,并且可以适用于任意HTML元素,如div,span,p,a,button,input等,适用于任意HTML元素,且大小随字号的改变而改变
效果:

css:
  1. .button {
  2.     display: inline-block;
  3.     outline: none;
  4.     cursor: pointer;
  5.     text-align: center;
  6.     text-decoration: none;
  7.     font: 16px/100% 'Microsoft yahei',Arial, Helvetica, sans-serif;
  8.     padding: .5em 2em .55em;
  9.     text-shadow: 0 1px 1px rgba(0,0,0,.3);
  10.     -webkit-border-radius: .5em; 
  11.     -moz-border-radius: .5em;
  12.     border-radius: .5em;
  13.     -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
  14.     -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
  15.     box-shadow: 0 1px 2px rgba(0,0,0,.2);
  16. }
  17. .button:hover {
  18.     text-decoration: none;
  19. }
  20. .button:active {
  21.     position: relative;
  22.     top: 1px;
  23. }
  24. .bigrounded {
  25.     -webkit-border-radius: 2em;
  26.     -moz-border-radius: 2em;
  27.     border-radius: 2em;
  28. }
  29. .medium {
  30.     font-size: 12px;
  31.     padding: .4em 1.5em .42em;
  32. }
  33. .small {
  34.     font-size: 11px;
  35.     padding: .2em 1em .275em;
  36. }


  37. /* blue */
  38. .blue {
  39.     color: #d9eef7;
  40.     border: solid 1px #0076a3;
  41.     background: #0095cd;
  42.     background: -webkit-gradient(linear, left top, left bottom, from(#00adee), to(#0078a5));
  43.     background: -moz-linear-gradient(top,  #00adee,  #0078a5);
  44.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#00adee', endColorstr='#0078a5');
  45. }
  46. .blue:hover {
  47.     background: #007ead;
  48.     background: -webkit-gradient(linear, left top, left bottom, from(#0095cc), to(#00678e));
  49.     background: -moz-linear-gradient(top,  #0095cc,  #00678e);
  50.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#0095cc', endColorstr='#00678e');
  51. }
  52. .blue:active {
  53.     color: #80bed6;
  54.     background: -webkit-gradient(linear, left top, left bottom, from(#0078a5), to(#00adee));
  55.     background: -moz-linear-gradient(top,  #0078a5,  #00adee);
  56.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#0078a5', endColorstr='#00adee');
  57. }

  58. /* green */
  59. .green {
  60.     color: #e8f0de;
  61.     border: solid 1px #538312;
  62.     background: #64991e;
  63.     background: -webkit-gradient(linear, left top, left bottom, from(#7db72f), to(#4e7d0e));
  64.     background: -moz-linear-gradient(top,  #7db72f,  #4e7d0e);
  65.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#7db72f', endColorstr='#4e7d0e');
  66. }
  67. .green:hover {
  68.     background: #538018;
  69.     background: -webkit-gradient(linear, left top, left bottom, from(#6b9d28), to(#436b0c));
  70.     background: -moz-linear-gradient(top,  #6b9d28,  #436b0c);
  71.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#6b9d28', endColorstr='#436b0c');
  72. }
  73. .green:active {
  74.     color: #a9c08c;
  75.     background: -webkit-gradient(linear, left top, left bottom, from(#4e7d0e), to(#7db72f));
  76.     background: -moz-linear-gradient(top,  #4e7d0e,  #7db72f);
  77.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#4e7d0e', endColorstr='#7db72f');
  78. }

  79. /* white */
  80. .white {
  81.     color: #606060;
  82.     border: solid 1px #b7b7b7;
  83.     background: #fff;
  84.     background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed));
  85.     background: -moz-linear-gradient(top,  #fff,  #ededed);
  86.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed');
  87. }
  88. .white:hover {
  89.     background: #ededed;
  90.     background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dcdcdc));
  91.     background: -moz-linear-gradient(top,  #fff,  #dcdcdc);
  92.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dcdcdc');
  93. }
  94. .white:active {
  95.     color: #999;
  96.     background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#fff));
  97.     background: -moz-linear-gradient(top,  #ededed,  #fff);
  98.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#ffffff');
  99. }

  100. /* orange */
  101. .orange {
  102.     color: #fef4e9;
  103.     border: solid 1px #da7c0c;
  104.     background: #f78d1d;
  105.     background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
  106.     background: -moz-linear-gradient(top,  #faa51a,  #f47a20);
  107.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
  108. }
  109. .orange:hover {
  110.     background: #f47c20;
  111.     background: -webkit-gradient(linear, left top, left bottom, from(#f88e11), to(#f06015));
  112.     background: -moz-linear-gradient(top,  #f88e11,  #f06015);
  113.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88e11', endColorstr='#f06015');
  114. }
  115. .orange:active {
  116.     color: #fcd3a5;
  117.     background: -webkit-gradient(linear, left top, left bottom, from(#f47a20), to(#faa51a));
  118.     background: -moz-linear-gradient(top,  #f47a20,  #faa51a);
  119.     filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47a20', endColorstr='#faa51a');
  120. }
html:
  1. <div class="demo">
  2.         <a href="#" class="button blue">蓝色</a> 
  3.         <a href="#" class="button blue bigrounded">Rounded</a> 
  4.         <a href="#" class="button blue medium">Medium</a> 
  5.         <a href="#" class="button blue small">Small</a> 
  6.         
  7.         <input class="button blue" type="button" value="Input Element" /> 
  8.         <button class="button blue">Button Tag</button>
  9.     </div>
  10.     
  11.     <div class="demo">
  12.         <a href="#" class="button green">绿色</a> 
  13.         <a href="#" class="button green bigrounded">Rounded</a> 
  14.         <a href="#" class="button green medium">Medium</a> 
  15.         <a href="#" class="button green small">Small</a> 
  16.         
  17.         <input class="button green" type="button" value="Input Element" /> 
  18.         <button class="button green">Button Tag</button>
  19.     </div>
  20.     
  21.     <div class="demo">
  22.         <a href="#" class="button white">灰白</a> 
  23.         <a href="#" class="button white bigrounded">Rounded</a> 
  24.         <a href="#" class="button white medium">Medium</a> 
  25.         <a href="#" class="button white small">Small</a> 
  26.         <input class="button white" type="button" value="Input Element" /> 
  27.         <button class="button white">Button Tag</button>
  28.     </div>
  29.     
  30.     <div class="demo">
  31.         <a href="#" class="button orange">橘红</a> 
  32.         <a href="#" class="button orange bigrounded">Rounded</a> 
  33.         <a href="#" class="button orange medium">Medium</a> 
  34.         <a href="#" class="button orange small">Small</a> 
  35.         <input class="button orange" type="button" value="Input Element" /> 
  36.         <button class="button orange">Button Tag</button>
  37.     </div>
----------------------------------------------------------+++++++++++++++--------------------------------------------------
这么好的东西,你必须:
称赞之
收藏之
扩展之