技術頻道導航
HTML/CSS
.NET技術
IIS技術
PHP技術
Js/JQuery
Photoshop
Fireworks
服務器技術
操作系統
網站運營

贊助商

分類目錄

贊助商

最新文章

搜索

很好看的css3動畫按鈕鼠標懸停效果【2個實例】

作者:admin    時間:2019-9-19 22:35:9    瀏覽:

前一篇文章我介紹了5個懸停效果非常漂亮的css3動畫按鈕實例,本文將再通過2個實例介紹懸停效果很酷的css3實現的動畫按鈕。

demo

實例一

css3實現的動畫按鈕

實例一:css3實現的動畫按鈕

我們做一個有星星的圓形按鈕!當然,我們會讓星星在懸停(hover)時旋轉(伴隨著微弱的震動)并顯示其他文本。

標記

我們的按鈕鏈接有三個span。最后一個是懸停(hover)時顯示的隱藏文本。

<a href="#" class="a-btn">
  <span></span>
  <span>Sign up</span>
  <span>It's free!</span>
</a>

CSS

在這個例子中,我們將使用一些nth-child。因為我們有3個span,所以我們需要將它們稱為.a-btn span:nth-child(1), .a-btn span:nth-child(2) 和 .a-btn span:nth-child(3)

我們將使按鈕變成圓形,并添加一些非常漂亮的框陰影。為了使主文本垂直居中,我們將其顯示設置為表格單元格。星星和隱藏的文字將絕對定位。

.a-btn{
    width: 120px;
    height: 120px;
    border-radius: 50%;
    display: block;
    margin: 20px;
    float: left;
    background: #f0ad4e;
    position: relative;
    box-shadow:    
        0px 0px 5px 0px rgba(246, 212, 163, 0.5) inset,
        0px -1px 5px 4px rgba(170, 77, 27, 0.2) inset,
        0px 0px 0px 7px #fff, 
        0px 0px 1px 8px rgba(188, 188, 188, 0.4),
        0px 0px 0px 9px #fff;
    transition: all 0.3s linear;
}
.a-btn span{
    display: table-cell;
    width: 80px;
    height: 80px;
    padding: 20px;
    text-align: center;
    vertical-align: middle;
    font-size: 26px;
    color: #fff;
    text-shadow: 0px 1px 1px #A03F16;
    font-family: "Arvo", "Myriad Pro", "Trebuchet MS", sans-serif;
    transition: all 0.3s linear;
}
.a-btn span:nth-child(1), 
.a-btn span:nth-child(3){
    position: absolute;
    top: 0px;
    left: 0px;
    font-size: 40px;
    line-height: 36px;
    opacity: 0;
}
.a-btn span:nth-child(1){
    background: transparent url(../images/star.png) no-repeat center center;
    opacity: 0.2;
}

懸停(hover)時,我們將更改按鈕的框陰影,使其看起來被抬起。隱藏文本將淡入,我們將對初始文本應用彈出動畫。我們將對星星應用旋轉動畫:

.a-btn:hover{
    background: rgba(170, 77, 27, 0.6);
    box-shadow:    
        0px 0px 5px 0px rgba(246, 212, 163, 0.5) inset,
        0px -1px 5px 4px rgba(170, 77, 27, 0.2) inset,
        0px 0px 0px 7px #fff, 
        1px 4px 5px 8px rgba(188, 188, 188, 0.6),
        0px 0px 0px 9px #fff;
}
.a-btn:hover span:nth-child(3){
    opacity: 1; 
}
.a-btn:hover span:nth-child(2){
        transform: scale(0);
    opacity: 0; 
}
.a-btn:hover span:nth-child(1){
    animation: rotate 1s linear; 
}

讓我們在單擊按鈕時使其看起來被按下:

.a-btn:active{
    box-shadow:    
        0px 0px 5px 0px rgba(246, 212, 163, 0.5) inset,
        0px -1px 5px 4px rgba(170, 77, 27, 0.2) inset,
        0px 0px 0px 7px #fff, 
        0px -1px 0px 8px rgba(188, 188, 188, 0.3),
        0px 0px 0px 10px #fff;
}
.a-btn:active span:nth-child(2){
    color: rgba(170, 77, 27, 0.8);
    text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.6);
}

旋轉/跳動動畫如下所示:

@-webkit-keyframes rotate{
    0% { transform: scale(1) rotate(0);}
    50% { transform: scale(0.5) rotate(180deg);}
    100% { transform: scale(1) rotate(360deg);}
}

execcodegetcode

實例二

實例二:css3實現的動畫按鈕

實例二:css3實現的動畫按鈕

在本例子中,我們將使用一些漂亮的框陰影創建一個三維外觀。

標記

該結構將由按鈕鏈接內部的3個span元素組成。

<a href="#" class="a-btn">
  <span class="a-btn-symbol">J</span>
  <span class="a-btn-text">Download Now</span> 
  <span class="a-btn-slide-text">Windows Vista / Windows 7</span>
</a>

CSS

.a-btn{
    border-radius: 10px;
    padding: 10px 30px 10px 70px;
    position: relative;
    float:left;
    display: block;
    overflow: hidden;
    margin: 10px;
    background: linear-gradient(top, #b7f2f4 0%,#7ce7ea 100%);
    border: 1px solid #90c6c8;
    border-color: #90c6c8 #78bdc0 #65b6ba;
    box-shadow: 
        0px -5px 0px 0px #458a8c, 
        0 1px 1px #d5d5d5, 
        0 1px 0 rgba(255,255,255,0.8) inset;  
    transition: all 0.2s linear;
}
.a-btn-symbol{
    font-family: 'WebSymbolsRegular', cursive;
    color: #437b7d;
    text-shadow: 0 1px 0 #bef3f5;
    font-size: 20px;
    position:absolute;
    left: 20px;
    width: 20px;
    text-align: center;
    line-height: 32px;
    transition: all 0.3s ease-in-out;
}
.a-btn-text{
    font-size: 20px;
    color: #437b7d;
    text-shadow: 0 1px 0 #bef3f5;
    line-height: 16px;
    font-weight: bold;
    font-family: "Myriad Pro", "Trebuchet MS", sans-serif;
    display: block;
}
.a-btn-slide-text{
    font-family: Arial, sans-serif;
    font-size: 10px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #555;
    text-shadow: 0px 1px 1px rgba(255,255,255,0.9);
}

懸停時,我們將放大按鈕并旋轉小圖標:

.a-btn:hover{
    transform: scale(1.05);
}
.a-btn:hover .a-btn-symbol{
    opacity: 0.5;
    transform: rotate(360deg);
}

單擊按鈕時,我們將使按鈕變小并通過調整框陰影來按下:

.a-btn:active{
    transform: scale(0.95);
    box-shadow: 
        0px 0px 0px 1px #458a8c, 
        0 1px 1px #d5d5d5, inset 0 1px 0 rgba(255,255,255,0.8),
        0px 1px 1px 2px #fff;  
}

execcodegetcode

本文介紹了2個css3動畫按鈕實例,前一篇文章我還介紹了5個css3動畫按鈕實例,同樣懸停效果做得非常漂亮。

標簽: css3  css  動畫按鈕  按鈕  button  hover  懸停效果  
  • IT熱文
  • 站長推薦
财神捕鱼128 澳洲幸运5开奖最快 临沂托运部赚钱吗 安徽体彩15选5预测分析 体彩任选五规则 新浪足彩网 安徽快3走勢图 福建31选7开奖走势图历史走势图 十三水棋牌游戏在线 铺鱼达人3d 赚钱吗 快乐10分复式中奖规则