指引网

当前位置: 主页 > 网页制作 > CSS >

使用CSS3制作漂亮的按钮

来源:网络 作者:佚名 点击: 时间:2017-08-07 22:04
[摘要] 这些纯CSS代码制作的按钮大小可以根据字体大小自动调整,渐变色背景可以兼容各浏览器,并且有正常、鼠标滑向、点击三种状态样式,当然,如
这些纯CSS代码制作的按钮大小可以根据字体大小自动调整,渐变色背景可以兼容各浏览器,并且有正常、鼠标滑向、点击三种状态样式,当然,如果您的浏览器不支持CSS3,那么按钮将没有圆角和阴影效果。

CSS3特性

首先我们熟悉下CSS3是如何实现圆角和阴影效果的。

CSS3提供了新的属性如:阴影text-shadow,box-shadow,和圆角border-radius,我们先来看这样一段CSS3代码:
 

 
复制代码代码如下:
  1. text-shadow: 0 1px 1px rgba(0,0,0,.3);
  2.  box-shadow: 0 1px 2px rgba(0,0,0,.2);
  3.  -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
  4.  -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
以上代码第一行设置了文字的阴影效果,它的用法结构:X轴偏移量,Y轴偏移量,模糊量,颜色,对于颜色可以使用RGBA模式。

第二行代码设置了边框盒子阴影效果,用法与文字阴影效果一样。

第三行和第四行分别表示在不同浏览器内核下的CSS3用法,-webkit-xxx表示webkit内核,-moz-xxx表示firefox内核。

border-radius用来设置圆角样式,同样有webkit和firefox之分。
 

 
复制代码代码如下:
  1. border-radius: .5em;
  2. -webkit-border-radius: .5em; /* for Webkit */
  3. -moz-border-radius: .5em;  /* for Firefox */
那么如何用CSS3处理渐变色的跨浏览器兼容的问题呢?在css2时代,我们通常会准备一张制作好的渐变背景图片,然后通过background-color来加载背景图片,从而实现背景色渐变效果。而CSS3,只需要区分不同浏览器内核下使用颜色来完成渐变效果。
 
复制代码代码如下:
  1. background: #0095cd;
  2. /* for Webkit */
  3. background: -webkit-gradient(linear, left top, left bottom, from(#00adee), to(#0078a5));
  4.  /* for Firefox */
  5. background: -moz-linear-gradient(top,  #00adee, #0078a5);
  6. /* for IE */
  7.  filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#00adee',  endColorstr='#0078a5');
对于webkit内核浏览器,-webkit-gradient(),linear表示渐变类型为线性渐变,left top表示渐变开始位置X轴和Y轴,left bottom表示渐变结束位置X轴和Y轴,from(#00adee), to(#0078a5)表示渐变色从#00adee到#0078a5。

对于firefox内核浏览器,-moz-linear-gradient(top, #00adee, #0078a5)中linear表示渐变类型为线性渐变,top表示渐变开始位置,后面表示两个颜色值的变化。

而对于IE内核,使用filter(滤镜),其中startColorstr和endColorstr分别表示开始颜色和结束颜色的变化值。

介绍完上面的CSS3特性,我们现在来使用CSS3制作漂亮的按钮效果。
 

在线演示

------分隔线----------------------------