只需要兩個html元素和一個css變換,我就能創造出我自己的閃光效果。讓我們來實現它!
呈現光澤圖片
下面就是這張addy在他博客上使用的圖片:
比我需要的要大一些,但你可以把它裁剪一些。
注意:左邊的那張是純白色的,所以看不到,兩張圖在css代碼中都要用到。
html代碼
制作這種閃光效果,需要有兩個元素:一個外框架,另一個內部元素用來呈現光澤。我這里使用了a標簽和span標簽:
復制代碼代碼如下:
html代碼總是最簡單的。
css代碼
a元素的樣式很簡單,溢出的部分要隱藏,保證光澤的正常顯示,最后設置元素的長寬:
復制代碼代碼如下:
a.logo {
display: block;
background: url("logo.png") 0 0 no-repeat;
height: 70px;
width: 91px;
overflow: hidden;
}
負責光澤的span元素也十分簡單;設置它的長寬和背景位置就行了:
復制代碼代碼如下:
a.logo span {
display: block;
background: url("shine.png") -60px -80px no-repeat;
transition-property: all;
transition-duration: .8s;
height: 70px;
width: 91px;
}
最后一步是設置鼠標懸停時的動作:
復制代碼代碼如下:
a.logo:hover span {
background-position: 100px 100px;
}
因為臉部是弧線形,這里做了一些特殊處理,我用border-radius將內部的span變成了橢圓形:
復制代碼代碼如下:
a.logo span {
border-radius: 50%;
}
這就是當鼠標懸停時光澤一閃而過的效果了,非常簡單!
用這樣少的代碼創造出這么炫的效果,完全值得放在網站上。很多年前我們都需要使用javascript工具庫才能完成這樣的效果——而現在輕松的只需要幾行css代碼。希望你們也覺得這個效果很有趣,你可以換成你的頭像試一下!