|
|
|
|
|
本文將給大家介紹一個(gè)漂亮的css3圓形鼠標(biāo)懸停效果,這個(gè)效果在產(chǎn)品展示或列表圖片中都可以應(yīng)用,可以說(shuō)是應(yīng)用范圍挺廣泛的。關(guān)于鼠標(biāo)懸停效果,你還可以看看另一篇文章《使用css轉(zhuǎn)換和3d旋轉(zhuǎn)的圓形鼠標(biāo)懸停效果【2例】》
css3圓形鼠標(biāo)懸停效果
在本例中,我們希望將內(nèi)部縮略圖部分縮小到0,并通過(guò)淡入并縮小到1來(lái)顯示描述元素。
本示例我們將使用以下結(jié)構(gòu):
<li>
<div class="ch-item ch-img-1">
<div class="ch-info-wrap">
<div class="ch-info">
<div class="ch-info-front ch-img-1"></div>
<div class="ch-info-back">
<h3>taxi</h3>
<p>by Ana Villa-Zamora <a href="#">View on Dribbble</a></p>
</div>
</div>
</div>
</div>
</li>
我們將在以“ch img-
”開(kāi)頭的類(lèi)中定義它們。另外,我們將有一個(gè)帶有標(biāo)題的項(xiàng)目描述分區(qū)。
這個(gè)項(xiàng)目有一個(gè)常用樣式:
.ch-item {
width: 100%;
height: 100%;
border-radius: 50%;
position: relative;
box-shadow: 0 1px 2px rgba(0,0,0,0.1);
cursor: default;
}
描述div的包裝器和info div本身將具有以下通用樣式:
.ch-info-wrap,
.ch-info{
position: absolute;
width: 180px;
height: 180px;
border-radius: 50%;
}
設(shè)置相同的背景的主體包裝:
.ch-info-wrap {
top: 20px;
left: 20px;
background: #f9f9f9 url(../images/bg.jpg);
box-shadow:
0 0 0 20px rgba(255,255,255,0.2),
inset 0 0 3px rgba(115,114, 23, 0.8);
}
“front”和“back”(不再是真正的前和后)共同的類(lèi)型:
.ch-info > div {
display: block;
position: absolute;
width: 100%;
height: 100%;
border-radius: 50%;
background-position: center center;
}
“front”將有一個(gè)過(guò)渡(它將縮小并消失):
.ch-info .ch-info-front {
transition: all 0.6s ease-in-out;
}
保留描述的背面最初將具有0不透明度,并放大到1.5:
.ch-info .ch-info-back {
opacity: 0;
background: #223e87;
pointer-events: none;
transform: scale(1.5);
transition: all 0.4s ease-in-out 0.2s;
}
我們需要將指針事件設(shè)置為“沒(méi)有”,因?yàn)槲覀儾幌M撛?ldquo;block
”所有其他東西…記住,它被放大了,我們不能看到它,因?yàn)樗煌该鞫?,但它仍然存在?/p>
.ch-img-1 {
background-image: url(../images/13.jpg);
}
.ch-img-2 {
background-image: url(../images/14.jpg);
}
.ch-img-3 {
background-image: url(../images/15.jpg);
}
.ch-info h3 {
color: #fff;
text-transform: uppercase;
letter-spacing: 2px;
font-size: 18px;
margin: 0 15px;
padding: 40px 0 0 0;
height: 80px;
font-family: 'Open Sans', Arial, sans-serif;
text-shadow:
0 0 1px #fff,
0 1px 2px rgba(0,0,0,0.3);
}
.ch-info p {
color: #fff;
padding: 10px 5px 0;
font-style: italic;
margin: 0 30px;
font-size: 12px;
border-top: 1px solid rgba(255,255,255,0.5);
}
.ch-info p a {
display: block;
color: #e7615e;
font-style: normal;
font-weight: 700;
text-transform: uppercase;
font-size: 9px;
letter-spacing: 1px;
padding-top: 4px;
font-family: 'Open Sans', Arial, sans-serif;
}
.ch-info p a:hover {
color: #fff;
}
懸停時(shí),我們將縮小內(nèi)部縮略圖部分為0,并將不透明度設(shè)置為0。這會(huì)讓它消失在后面。
.ch-item:hover .ch-info-front {
transform: scale(0);
opacity: 0;
}
包含描述的部分將縮小為1并淡入。我們還將指針事件設(shè)置為以前的任何值,因?yàn)楝F(xiàn)在我們希望能夠單擊鏈接:
.ch-item:hover .ch-info-back {
transform: scale(1);
opacity: 1;
pointer-events: auto;
}