按钮图标

多种纯css3按钮样式

阿里云

这是一款使用 css 伪元素制作的纯 css3 按钮样式。该款按钮样式共有 5 种效果,后面 4 种有 3d 立体效果。该 css3 按钮样式是网页设计不可多得的素材。在以前要做这种按钮鼠标滑过或按下的效果大多是使用 css 雪碧技术(即将多张图片合成一张,然后用 css 来控制图片的显示)。在这个 css3 按钮样式插件中,仅使用一个 a 标签,在使用 css 伪元素即可完成这项工作。

HTML 代码

所有这些 demo 的 html 结构是相同的,仅需要一个 a 标签:

也想出现在这里?联系我们
创客主机
  1. <a href="#" class="a_demo_one">
  2.      Click me!
  3. </a>


首先给它一些通用样式,需要指出的是 position 必须是 relative,因为后面要使用到::before 伪元素。

  1. .a_demo_one {
  2.     background-color:#ba2323;
  3.     padding:10px;
  4.     position:relative;
  5.     font-family: 'Open Sans', sans-serif;
  6.     font-size:12px;
  7.     text-decoration:none;
  8.     color:#fff;
  9.     border: solid 1px #831212;
  10.     background-image: linear-gradient(bottom, rgb(171,27,27) 0%, rgb(212,51,51) 100%);
  11.     border-radius: 5px;
  12. } 
  13. .a_demo_one:active {
  14.     padding-bottom:9px;
  15.     padding-left:10px;
  16.     padding-right:10px;
  17.     padding-top:11px;
  18.     top:1px;
  19.     background-image: linear-gradient(bottom, rgb(171,27,27) 100%, rgb(212,51,51) 0%);
  20. }

然后我们用::before 伪元素插件一个灰色的容器包住按钮。

  1. .a_demo_one::before {
  2.     background-color:#ccd0d5;
  3.     content:"";
  4.     display:block;
  5.     position:absolute;
  6.     width:100%;
  7.     height:100%;
  8.     padding:8px;
  9.     left:-8px;
  10.     top:-8px;
  11.     z-index:-1;
  12.     border-radius: 5px;
  13.     box-shadow: inset 0px 1px 1px #909193, 0px 1px 0px #fff;
  14. }


第二个 demo 中带有一点 3d 效果。

  1. .a_demo_two {
  2.     background-color:#6fba26;
  3.     padding:10px;
  4.     position:relative;
  5.     font-family: 'Open Sans', sans-serif;
  6.     font-size:12px;
  7.     text-decoration:none;
  8.     color:#fff;
  9.     background-image: linear-gradient(bottom, rgb(100,170,30) 0%, rgb(129,212,51) 100%);
  10.     box-shadow: inset 0px 1px 0px #b2f17f, 0px 6px 0px #3d6f0d;
  11.     border-radius: 5px;
  12. }
  13.  
  14. .a_demo_two:active {
  15.     top:7px;
  16.     background-image: linear-gradient(bottom, rgb(100,170,30) 100%, rgb(129,212,51) 0%);
  17.     box-shadow: inset 0px 1px 0px #b2f17f, inset 0px -1px 0px #3d6f0d;
  18.     color: #156785;
  19.     text-shadow: 0px 1px 1px rgba(255,255,255,0.3);
  20.     background: rgb(44,160,202);
  21. }

下面是实现 3d 效果的关键:由于伪元素的位置依赖与它的父元素。当父元素向下移动某一像素时,伪元素必须向上移动相同的像素值。

  1. .a_demo_two::before {
  2.     background-color:#072239;
  3.     content:"";
  4.     display:block;
  5.     position:absolute;
  6.     width:100%;
  7.     height:100%;
  8.     padding-left:2px;
  9.     padding-right:2px;
  10.     padding-bottom:4px;
  11.     left:-2px;
  12.     top:5px;
  13.     z-index:-1;
  14.     border-radius: 6px;
  15.     box-shadow: 0px 1px 0px #fff;
  16. }
  17.  
  18. .a_demo_two:active::before {
  19.     top:-2px;
  20. }

余下的 demo 的 css 代码请参考下载的文件。

多种纯 css3 按钮样式

已有 961 人购买
查看演示升级 VIP立刻购买

演示地址 下载地址
收藏
(5)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!