如何使用 CSS 建立滑鼠懸停時顯示影像疊加圖示的效果?
要使用 CSS 建立影像疊加圖示效果,您需要設定圖示。這裡,我們將考慮 Font Awesome 圖示。要包含此類圖示,請在 <link> 下設定圖示的 CDN。懸停時,疊加效果將顯示圖示。
設定圖示的 CDN
為了在我們的網頁上新增圖示,我們使用了 Font Awesome 圖示。使用 <link> 元素將其包含在網頁中:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
設定卡片的父容器
為包含影像、文字和標題的卡片設定一個 div。在其中,使用 <i> 設定圖示:
<div class="card-container">
<img src="https://www.gstatic.com/webp/gallery/4.sm.jpg">
<div class="hoverText">
<div class="caption">
<i style="font-size:150px" class="fa fa-tree" aria-hidden="true"></i>
</div>
</div>
</div>
定位容器
使用 position 屬性將卡片定位為相對定位:
.card-container {
display: inline-block;
position: relative;
width: 50%;
}
疊加效果
使用 ease 效果設定 transition 屬性。當滑鼠懸停在影像上時,疊加效果會顯示圖示:
img {
opacity: 1;
display: block;
width: 100%;
transition: .5s ease;
backface-visibility: hidden;
}
.hoverText {
position: absolute;
top:0;
height: 100%;
transition: .5s ease;
opacity: 0;
width: 100%;
text-align: center;
}
標題容器
標題容器顯示滑鼠懸停時可見的內容。圖示將可見,並帶有我們在此處使用 background-color 屬性設定的背景:
.caption {
background-color: rgb(18, 53, 131);
color: white;
font-size: 30px;
padding-top:30%;
border-radius: 6px;
height: 100%;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
font-weight: bolder;
}
示例
以下是使用 CSS 生成滑鼠懸停時顯示影像疊加圖示效果的程式碼:
<!DOCTYPE html>
<html>
<head>
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" crossorigin="anonymous">
<style>
*{
box-sizing: border-box;
}
.card-container {
display: inline-block;
position: relative;
width: 50%;
}
img {
opacity: 1;
display: block;
width: 100%;
transition: .5s ease;
backface-visibility: hidden;
}
.hoverText {
position: absolute;
top:0;
height: 100%;
transition: .5s ease;
opacity: 0;
width: 100%;
text-align: center;
}
.card-container:hover .hoverText {
opacity: 1;
}
.caption {
background-color: rgb(18, 53, 131);
color: white;
font-size: 30px;
padding-top:30%;
border-radius: 6px;
height: 100%;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
font-weight: bolder;
}
</style>
</head>
<body>
<h1>Image Overlay Icon Example</h1>
<div class="card-container">
<img src="https://www.gstatic.com/webp/gallery/4.sm.jpg">
<div class="hoverText">
<div class="caption">
<i style="font-size:150px" class="fa fa-tree" aria-hidden="true"></i>
</div>
</div>
</div>
</body>
</html>
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP