首頁  >  文章  >  web前端  >  利用css偽類實現滑鼠滑過按鈕動畫效果

利用css偽類實現滑鼠滑過按鈕動畫效果

青灯夜游
青灯夜游轉載
2021-01-28 19:05:512504瀏覽

利用css偽類實現滑鼠滑過按鈕動畫效果

按鈕,對開發者而言,是非常常見的一個功能。前端通常會在按鈕上加入一些操作互動樣式,增加一些使用者體驗。

例如:hover樣式、點選樣式、loading樣式等。下面我們透過簡單範例在學習一下css3動畫和css偽類。

範例一

<button class="btn-1">按钮一</button>

<style>
button{
  position: relative;
  width: 100px;
  height: 40px;
  border: 1px solid #46b0ff;
  background: none;
  cursor: pointer;
}
button:after{
  position: absolute;
  content: &#39;&#39;;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.btn-1:after{
  opacity: 0; 
  background: #46b0ff;
  transition: all .3s;
  z-index: -1;
}
.btn-1:hover:after{
  opacity: 1; 
}
</style>

利用css偽類實現滑鼠滑過按鈕動畫效果

#解析:

1、利用偽類別作為滑鼠:hover事件後,按鈕的背景,這裡用到了相對定位(relative)和絕對定位(absolute)

切記:使用絕對定位的元素,父元素一定要用相對定位,否則元素會一直向上找相對定位的元素,直至根節點。

2、這裡用transition對:hover事件動畫做描述,0.3s完成動畫,改變:after的透明度。 all是所有行為。

當然,這裡我們還有更簡單是實現方式,不用類型,直接改變背景也是ok的,請看程式碼:

<button class="btn-1">按钮一</button>

<style>
button{
  position: relative;
  width: 100px;
  height: 40px;
  border: 1px solid #46b0ff;
  background: none;
  cursor: pointer;
  background: rgba(70, 176, 255, 0);
  transition: all 1s;
}
.btn-1:hover{
  background: rgba(70, 176, 255, 1);
}
</style>

ok,我們在範例一的基礎上,更進一步,請看範例二

範例二

<button class="btn-2">按钮二</button>

<style>
...
/* 这里省略上方的公共样式 */
.btn-2:after{
  width: 0;
  background: #f13f84;
  transition: all .3s;
  z-index: -1;
}
.btn-2:hover:after{
  width: 100%;
}
</style>

利用css偽類實現滑鼠滑過按鈕動畫效果

#:

1、這裡與範例一其實類似,不過這裡是改變偽類的寬度。

2、以此類推,我們可以改變偽類的高度,就可以看到向下擴展的動畫了。

<button class="btn-3">按钮三</button>

<style>
...
/* 这里省略上方的公共样式 */
.btn-2:after{
  width: 0;
  background: #f13f84;
  transition: all .3s;
  z-index: -1;
}
.btn-2:hover:after{
  width: 100%;
}
</style>

利用css偽類實現滑鼠滑過按鈕動畫效果

更多程式相關知識,請造訪:程式設計入門! !

以上是利用css偽類實現滑鼠滑過按鈕動畫效果的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:javanx.cn。如有侵權,請聯絡admin@php.cn刪除