一组纯CSS3带SVG图标的扁平风格按钮设计

当前位置:主页 > CSS3库 > UI界面设计 > 一组纯CSS3带SVG图标的扁平风格按钮设计
一组纯CSS3带SVG图标的扁平风格按钮设计
分享:

    插件介绍

    这是一组非常时尚的纯CSS3带SVG图标的扁平风格按钮。这些按钮使用Flexbox来布局,按钮上带有SVG图标,在鼠标滑过按钮时会有背景色和现状上的变化效果。

    浏览器兼容性

    浏览器兼容性
    时间:08-19
    阅读:
简要教程

这是一组非常时尚的纯CSS3SVG图标的扁平风格按钮。这些按钮使用Flexbox来布局,按钮上带有SVG图标,在鼠标滑过按钮时会有背景色和现状上的变化效果。

使用方法

HTML结构

带图标的按钮的基本HTML结构如下:

<a href="" class="btn red">BUTTON
  <svg class="btn-icon btn-icon--vis" viewBox="0 0 24 24">
    <path d="M10 6l-1.41 1.41 4.58 4.59-4.58 4.59 1.41 1.41 6-6z"/>
    <path d="M0 0h24v24h-24z" fill="none"/>
  </svg>
</a>            
              
CSS样式

按钮的通用样式如下:按钮的布局使用flexbox,IE9及以下的浏览器不支持这个属性。

.btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 8.333333333333334px;
  padding: 10px 25px;
  border-radius: 2px;
  line-height: normal;
  font-size: 16px;
  color: #fff;
  background: #fff;
}
/* block buttons */
.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.flex > .btn {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-right: 3px;
}
.flex > .btn:last-child {
  margin-right: 0;
}
.max-w {
  max-width: 600px;
}                
              

SVG图标的基本样式如下:.btn-icon为隐藏状态的图标,.btn-icon--vis为可见状态的图标。

.btn-icon {
  will-change: width, transform;
  width: 0;
  height: 24px;
  padding: 4px;
  border-radius: 50%;
  fill: #fff;
  background: rgba(0,0,0,0.15);
  margin-left: 0;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  -webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
          transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
}
.btn-icon--vis {
  width: 24px;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  margin-left: 8.333333333333334px;
}                
              

这组按钮效果中共给出了.btn--style1-.btn--style44种样式的活动按钮。以及一组超大图标.btn--large。具体代码请参考下文件。