我在這裏搜索過,似乎無法找到任何線程來解決我遇到的問題。如果我錯過了某些東西,但是我很抱歉!在背景顏色前懸停更改透明背景圖像
我正在爲希望徽標在懸停狀態下更改的客戶端工作,同時在懸停時分配背景顏色。該徽標部分是透明的,所以背景色旨在顯示徽標。
我已經有了一些工作,但我得到一個討厭的結果,在第一個鼠標懸停,背景顏色似乎覆蓋整個圖像作爲彩色正方形。隨後的徘徊按預期工作。
這讓我想知道這個問題是否延遲了服務器提供的圖像。我試着預裝它們,但沒有運氣。
我在Codepen有一個原型,下面的源代碼! http://codepen.io/JD1990/pen/mPagaz
HTML
<div class="test">
<img src="http://dummyimage.com/318x318/ffffff/ffffff.png">
</div>
CSS
#preload-01 {
background: url(http://new-site-jd-5-5-16.new-site-fa.appspot.com/static/content/client-logo-bbc-inverse.png) no-repeat -9999px -9999px;
}
.test {
display: inline-block;
position: relative;
}
.test:after {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(0,0,0,0);
background-image: url(http://new-site-jd-5-5-16.new-site- fa.appspot.com/static/content/client-logo-bbc-inverse.png);
background-image: url(http://new-site-jd-5-5-16.new-site-fa.appspot.com/static/content/client-logo-bbc.png);
}
.test:hover:after {
background-image: url(http://new-site-jd-5-5-16.new-site-fa.appspot.com/static/content/client-logo-bbc-inverse.png);
background-color: black;
}
任何提示非常感謝,我還是用CSS相當缺乏經驗,所以,謝謝你提前:)
爲什麼你使用':after'? – Slime
您是否嘗試過使用本地圖片而不是網址?另外,如果你使用2張圖片。爲什麼你不能在第二張圖片中使用黑色背景? – Greg