lazyload 時利用 iconfont 顯示加載圖片和加載失敗效果javascript
查看democss
能夠是文字或者 iconfont, 並將圖標顯示到正中間
HTML 結構以下:html
<a href="javascript:" class="img-wrap img-placeholder"> <img data-src="http://ww2.sinaimg.cn/large/6eba2496gw1f3uya0kdfej20hs0b440w.jpg" /> </a>
.img-placeholder { font-size: 6em; line-height: 1; color: #999 !important; position: relative; &::after { content: 'Loading'; @include position(absolute, 50% 0 null); margin-top: -.5em; line-height: inherit; z-index: -1; // 使圖片加載後可以後直接蓋住圖標 } }
這裏須要用 js 在圖片 onerror 裏添加 class="img-error"
java
&.img-error::after { content: 'Load failed'; font-size: 20px; } &.img-error img { display: none; // 隱藏出錯圖片 }
效果和完整代碼見上面 demospa
SCSS 部分使用了 http://bourbon.io/code