iT邦幫忙

2021 iThome 鐵人賽

DAY 14
0
Modern Web

30天學網頁設計系列 第 14

Day14 互動式CSS按鈕動畫(上)

以下是以此圖為例的互動式CSS按鈕動畫範例:

變深

HTML

<div class="shape-ex1">按鈕</div>

CSS

.shape-ex1{
    width: 150px;
    height: 40px;
    display: block;
    text-align: center;
    cursor: pointer;
    line-height: 40px;
    color: #000;
    background-color: transparent;
    border: 1px solid #000;
    transition: all .3s linear;
}
.shape-ex1:hover{
    background-color: #000;
    color: #fff;
}

變淺

HTML

<div class="shape-ex2">按鈕</div>

CSS

.shape-ex2{
    width: 150px;
    height: 40px;
    display: block;
    text-align: center;
    cursor: pointer;
    line-height: 40px;
    color: #fff;
    background-color: #000;
    transition: all .3s linear;
}
.shape-ex2:hover{
    background-color: #666;
}

由左向右填滿

HTML

<div class="shape-ex3"><p>按鈕</p></div>

CSS

.shape-ex3{
    width: 150px;
    height: 40px;
    display: block;
    text-align: center;
    cursor: pointer;
    line-height: 40px;
    color: #000;
    background-color: transparent;
    border: 1px solid #000;
    position: relative;
    transition: all .3s linear;
}
.shape-ex3 > p{
    position: relative;
    z-index: 1;
}
.shape-ex3::before{
    content: "";
    width: 0%;
    height: 100%;
    display: block;
    background-color: #000;
    position: absolute;
    top: 0;
    left: 0;
    transition: all .3s ease;
}
.shape-ex3:hover{
    color: #fff;
}
.shape-ex3:hover::before{
    width: 100%;
}

由右向左填滿

HTML

<div class="shape-ex4"><p>按鈕</p></div>

CSS

.shape-ex4{
    width: 150px;
    height: 40px;
    display: block;
    text-align: center;
    cursor: pointer;
    line-height: 40px;
    color: #000;
    background-color: transparent;
    border: 1px solid #000;
    position: relative;
    transition: all .3s linear;
}
.shape-ex4 > p{
    position: relative;
    z-index: 1;
}
.shape-ex4::before{
    content: "";
    width: 0%;
    height: 100%;
    display: block;
    background-color: #000;
    position: absolute;
    top: 0;
    right: 0;
    transition: all .3s ease;
}
.shape-ex4:hover{
    color: #fff;
}
.shape-ex4:hover::before{
    width: 100%;
}

由上向下填滿

HTML

<div class="shape-ex5"><p>按鈕</p></div>

CSS

.shape-ex5{
    width: 150px;
    height: 40px;
    display: block;
    text-align: center;
    cursor: pointer;
    line-height: 40px;
    color: #000;
    background-color: transparent;
    border: 1px solid #000;
    position: relative;
    transition: all .3s linear;
}
.shape-ex5 > p{
    position: relative;
    z-index: 1;
}
.shape-ex5::before{
    content: "";
    width: 100%;
    height: 0%;
    display: block;
    background-color: #000;
    position: absolute;
    top: 0;
    left: 0;
    transition: all .3s ease;
}
.shape-ex5:hover{
    color: #fff;
}
.shape-ex5:hover::before{
    height: 100%;
}

由下向上填滿

HTML

<div class="shape-ex6"><p>按鈕</p></div>

CSS

.shape-ex6{
    width: 150px;
    height: 40px;
    display: block;
    text-align: center;
    cursor: pointer;
    line-height: 40px;
    color: #000;
    background-color: transparent;
    border: 1px solid #000;
    position: relative;
    transition: all .3s linear;
}
.shape-ex6 > p{
    position: relative;
    z-index: 1;
}
.shape-ex6::before{
    content: "";
    width: 100%;
    height: 0%;
    display: block;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: all .3s ease;
}
.shape-ex6:hover{
    color: #fff;
}
.shape-ex6:hover::before{
    height: 100%;
}

上一篇
Day13 hover應用(二)
下一篇
Day15 互動式CSS按鈕動畫(下)
系列文
30天學網頁設計30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言