DPI(DPR) stands for Dots Per Inch which technically means printer dots per inch。
這個引數實際上量化了螢幕的物理解析度和顯示清晰度,比如iphone的DPR就是2,比一般的手機都要高。
同樣的圖片在不同手機上顯示的效果就有很大不同,特別是對於apple裝置,由於其DPR比較高,因此一般必須對其
應用解析度高的圖片顯示效果才能得到保證。
常見的,可以使用media query來應用不同的style
@media
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
/* Retina-specific stuff here */
}
對於如何實現在蘋果高解析度手機上去應用高解析度的圖片,有一個叫做retina.js的js程式碼,可以實現相應功能,為了方便使用,
設定有相應的less/sass mixin以便方便開發者使用
下面是常見手機型號的引數值:
- -webkit-min-device-pixel-ratio為1.0
- 所有非Retina的Mac
- 所有非Retina的iOS裝置
- Acer Iconia A500
- Samsung Galaxy Tab 10.1
- Samsung Galaxy S
- -webkit-min-device-pixel-ratio為1.3
- Google Nexus 7
- -webkit-min-device-pixel-ratio為1.5
- Google Nexus S
- Samsung Galaxy S II
- HTC Desire
- HTC Desire HD
- HTC Incredible S
- HTC Velocity
- HTC Sensation
- -webkit-min-device-pixel-ratio為2.0
- iPhone 4
- iPhone 4S
- iPhone 5
- iPad (3rd generation)
- iPad 4
- 所有Retina displays 的MAC
- Google Galaxy Nexus
- Google Nexus 4
- Google Nexus 10
- Samsung Galaxy S III
- Samsung Galaxy Note II
- Sony Xperia S
- HTC One X