CSS3华丽按钮效果

图片部分用到transform:rotate(XXXdeg) scale(XXX); 变换:旋转 和 放大

方块按钮用到:定义四个span标签,分别代表了四条边,属性设为position:absolute;分别以不同方向划入,这里我是把它的width从0-到100%。

这里用到了transition属性,划入时候让他有过度效果。

tip方面:主要是怎么做三角形,其次是js动态更改tip left的位置。

这个练习算是综合考察了 css3的运用效果,大家可以自己尝试着做一下。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>btnEffect</title>
</head>
<script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
    var oBtn=$(‘.btn‘);
    var oTip=$(‘.tip‘);
    oBtn.hover(function(){
        var _this=$(this);
        var oT=140;
        var opac=1;
        AnimateFn(_this,opac,oT);
    },function(){
        var _this=$(this);
        var oT=100;
        var opac=0;
        AnimateFn(_this,opac,oT);
    })
    function AnimateFn(obj,opc,otop){
        var oA=obj.find(‘a‘);
        var oMsg=oA.attr(‘data-title‘);//msg
        var index=obj.index();
        var posLeft=parseInt(obj.position().left);
        oTip.find(‘em‘).text(oMsg);
        var selfWidth=obj.outerWidth();
        var oL=posLeft+parseInt(selfWidth/2)-parseInt(oTip.outerWidth()/2);
        var oT=otop;
        oTip.css(‘left‘,oL);
        oTip.stop().animate({
            ‘top‘:oT,
            ‘opacity‘:opc
        })
    }
});
</script>
<style type="text/css">
*{margin:0px;padding:0px;}
body{background:#333;font-family:Arial;font-size:12px;}
.box{width:690px;height:280px;margin:50px auto;position: relative;}
.box .btn{width:200px;float:left;margin-right:30px;}
/*图标*/
.icon{width:100%;height:200px;display:block;background-repeat: no-repeat;background-position: center center;

    transition:all 0.3s ease-out 0s;
    -webkit-transition:all 0.3s ease-out 0s;
    -moz-transition:all 0.3s ease-out 0s;
    -o-transition:all 0.3s ease-out 0s;
}
.link-misson .icon{
background-image:url(images/mission.png);

}
.link-play .icon{
background-image:url(images/play.png);

}
.link-touch .icon{
background-image:url(images/touch.png);

}
.btn:hover .icon{
    -webkit-transform:rotate(360deg) scale(1.2);
    -moz-transform:rotate(360deg) scale(1.2);
    -ms-transform:rotate(360deg) scale(1.2);
    -o-transform:rotate(360deg) scale(1.2);
    transform:rotate(360deg) scale(1.2);
}
/*按钮链接*/
.link{
    width:100%;
    height:50px;
    line-height:50px;
    display: block;
    color:#fff;
    border:2px solid rgba(255,255,255,0.8);
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    -o-box-sizing:border-box;
    padding-left:20px;
    text-decoration: none;
    color:#2DCB70;
    font-size:1.5em;
    background-image:url(images/allow_right.png);
    background-repeat: no-repeat;
    background-position:143px center;

    transition:all 0.3s ease-out 0s;
    -webkit-transition:all 0.3s ease-out 0s;
    -moz-transition:all 0.3s ease-out 0s;
    -o-transition:all 0.3s ease-out 0s;
    position:relative;
}
.btn:hover .link{background-position:153px center;border:2px solid rgba(255,255,255,1);}

.btn .link .arrow{
    display:block;
    background:rgba(45,203,112,0);
    transition:all 0.3s ease-out 0s;
    -webkit-transition:all 0.3s ease-out 0s;
    -moz-transition:all 0.3s ease-out 0s;
    -o-transition:all 0.3s ease-out 0s;

}
.btn:hover .link .arrow{
    background:rgba(45,203,112,1);
}
.btn .link .arrow-top{
    height:2px;
    width:0;
    position: absolute;
    left:-160%;
    top:-2px;

}
.btn:hover .link .arrow-top{
    left:-2px;
    width:102%;

}
.btn .link .arrow-right{
    height:0;
    width:2px;
    position: absolute;
    right:-2px;
    top:200%;

}
.btn:hover .link .arrow-right{
    height:107%;
    top:-2px;

}
.btn .link .arrow-bottom{
    width:0;
    height:2px;
    position: absolute;
    left:160%;
    bottom:-2px;

}
.btn:hover .link .arrow-bottom{
    width:102%;
    left:-2px;

}
.btn .link .arrow-left{
    width:2px;
    height:0;
    position: absolute;
    left:-2px;
    top:-200%;

}
.btn:hover .link .arrow-left{
    top:-2px;
    height:107%;
}
/*提示框*/
.box .tip{padding:10px;background:#2DCB70;position:absolute;left:0px;top:120px;border-radius:5px;
    opacity:0;
    filter:alpha(opacity:0);
}
.box .tip em{
    font-style: normal;
    font-size:1.4em;
    color:#fff;
}
.box .tip span{
    display:block;
    width:0;
    height:0;
    overflow:hidden;
    border:7px solid transparent;
    border-top-color:#2DCB70;
    position:absolute;
    bottom:-14px;
    left:50%;
    z-index:8;
    margin-left:-5px;
}
</style>
<body>
    <div class="box">
        <div class="btn link-misson">
            <span class="icon"></span>
            <a href="#" class="link" data-title="The misson is clear">
                <span class="arrow arrow-top"></span>
                <span class="arrow arrow-right"></span>
                <span class="arrow arrow-bottom"></span>
                <span class="arrow arrow-left"></span>
                Misson
            </a>
        </div>
        <div class="btn link-play">
            <span class="icon"></span>
            <a href="#" class="link" data-title="This is my playground">
                <span class="arrow arrow-top"></span>
                <span class="arrow arrow-right"></span>
                <span class="arrow arrow-bottom"></span>
                <span class="arrow arrow-left"></span>
                Play
            </a>
        </div>
        <div class="btn link-touch">
            <span class="icon"></span>
            <a href="#" class="link" data-title="The is my touch">
                <span class="arrow arrow-top"></span>
                <span class="arrow arrow-right"></span>
                <span class="arrow arrow-bottom"></span>
                <span class="arrow arrow-left"></span>
                Touch
            </a>
        </div>
        <div class="tip"><em></em><span></span></div>
    </div>
</body>
</html>
时间: 2024-10-10 16:52:20

CSS3华丽按钮效果的相关文章

纯CSS3动画按钮效果 5种漂亮样式DEMO演示

Come in ! click to begin You'll get a lot ! My box with glow HomeSee Us AboutMeet Us ContactEmail Us Home About Services Portfolio Contact us Login ? Register ? <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w

纯CSS3动画按钮效果 5种漂亮样式

这次我们要来分享一款很不错的CSS3按钮动画,这款CSS3按钮一共有5种动画方式,每一种都是鼠标滑过动画形式,虽然这些动画按钮不是十分华丽,但是小编觉得不像其他按钮那样很难扩展,我们可以修改CSS代码随意改变自己喜欢的颜色样式. 在线演示源码下载 让我们一起来看看实现这5中样式动画按钮的HTML代码和CSS代码吧.以第一个按钮为例,其他按钮的代码大家可以下载源代码来研究,并不是很难. HTML代码: <div class="button01"> <a href=&qu

最新的css3动画按钮效果

效果演示     插件下载

使用 CSS3 制作一组超时尚的动画按钮效果

通过 CSS3 的新特性,我们创作出好的交互和效果的可能性大大增加.这篇文章中,我想与大家分享一些 CSS3 动画按钮效果.我们的想法是创建一个具有不同风格的一些动画链接元素,鼠标悬停时有动画效果和活动状态. 效果演示     插件下载 HTML 示例代码: <a href="#" class="a-btn"> <span class="a-btn-slide-text">$29</span> <img

9款经典华丽的CSS3分享按钮

如果你经常活跃在一些社交网站上,那么你肯定会看到过很多形式各异的分享按钮,目前由于HTML5和CSS3的普及,很多分享按钮也都应用了CSS3样式,甚至会有很多带有动画的CSS3分享按钮.本文就向大家介绍了9款经典华丽的CSS3分享按钮,以及它们的源代码,希望能给各位开发者带来一定的帮助. 1.jQuery/CSS3实现超酷的分享按钮 今天要分享的这款分享按钮是基于CSS和jQuery的,按钮比较大,非常大气. 在线演示 源码下载 2.jQuery交互式分享按钮 可横向展开 这次要给大家介绍一款基

CSS3模拟实现iphone返回按钮效果

CSS3模拟实现iphone返回按钮效果:大家知道现在CSS3可以实现各种漂亮的效果,以前只有图片可以实现的效果,现在CSS3实现起来难度也不是太高.下面分享一段使用CSS3实现的iphone返回按钮的效果,其实这种CSS3代码根本就不用分析,只要给出代码实例,自己就完全可以看明白,当然你要首先知道各个属性的作用是什么,代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type&q

css3代码实现的鼠标悬浮按钮效果代码实例

css3代码实现的鼠标悬浮按钮效果代码实例:在css3之前,鼠标悬浮于按钮之上,无非是设置按钮的大小.字体颜色或者背景图片等简单的项目,但是css3的出现,可以让设置变得丰富多彩,下面就是一个css3实现的此效果.代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://

美妙的 CSS3 动画!一组梦幻般的按钮效果

今天给大家带来的是五款梦幻般的动画按钮效果.下面是在线演示,把鼠标放在按钮上试试,有惊喜哦!CSS3 引入了众多供功能强大的新特性,让设计和开发人员能够轻松的创作出各种精美的界面效果. 温馨提示:为保证最佳的效果,请在 IE10+.Chrome.Firefox 和 Safari 等现代浏览器中浏览. 源码下载     在线演示 这些精美的效果用到了 CSS3 border-radius(圆角).box-shadow(阴影).transition(变形).transform(转换)和 animat

第八十节,CSS3边框图片效果

CSS3边框图片效果 学习要点: 1.属性初探 2.属性解释 3.简写和版本 本章主要探讨HTML5中CSS3中边框图片背景的效果,通过这个新属性让边框更加的丰富多彩. 一.属性解释     CSS3提供了一个新的属性集合,用这几个属性可以嵌入图片形式的边框.这样,边框就可以自定义了.     1.border-image-source                      //引入背景图片地址     2.border-image-slice