久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

CSS 與 HTML5 響應式圖片

如何讓圖片在放大了兩倍的 Retina 屏幕顯示依然清晰,曾經(jīng)一度困擾著網(wǎng)頁開發(fā)者,好在 CSS3 與 HTML5 已經(jīng)著力在改變這種現(xiàn)狀。那么到底什么是響應式圖片呢? ... ... ...,HTML5中國,中國

隨著 Retina 屏幕的逐漸普及,網(wǎng)頁中對圖片的適配要求也越來越高。如何讓圖片在放大了兩倍的 Retina 屏幕顯示依然清晰,曾經(jīng)一度困擾著網(wǎng)頁開發(fā)者,好在 CSS3 與 HTML5 已經(jīng)著力在改變這種現(xiàn)狀。那么到底什么是響應式圖片呢?



什么是響應式圖片?


響應式圖片是指:用戶代理根據(jù)輸出設備的分辨率不同加載不同類型的圖片,不會造成帶寬的浪費。同時,在改變輸出設備類型或分辨率時,能及時加載對應類型的圖片。



CSS3 響應式圖片


對于很多 IOS 開發(fā)者來說可能已經(jīng)不太陌生了,為了適配 Retina 屏幕,傳統(tǒng)的 CSS3 實現(xiàn)方式是通過加載一張寬高分別放大兩倍的圖片,然后通過 Media Queries 使背景圖片尺寸減小一倍「background-size:50% 50%;」,例如:


.mod .hd h3 {
    background-image:url(http://alibuybuy-img11.stor.sinaapp.com/2013/01/ac30_T10s3JXn4XXXXnbIAn-105-160.png);/* 普通屏幕 */
}

/* ------------- Retina ------------- */
@media only screen and (-o-min-device-pixel-ratio: 2/1), /* Opera */
       only screen and (min--moz-device-pixel-ratio: 2), /* Firefox 16 之前 */
       only screen and (-webkit-min-device-pixel-ratio: 2), /* Webkit */
       only screen and (min-resolution: 240dpi), /* 標準 */
       only screen and (min-resolution: 2dppx) /* 標準 */
{
.mod .hd h3{
    background-image:url(http://alibuybuy-img11.stor.sinaapp.com/2013/01/a8e5_T1947tXmJhXXcCfooh-210-320.png);
    background-size: 105px 155px;
}
}


兩張圖片的對比效果:



在制作@2x圖片時需要注意一些問題:


如果類似上圖一樣是純文字內(nèi)容的圖片,不要直接從大圖片縮放為小圖片,這樣文字效果會有些失真,這是 Photoshop 渲染的問題。應該調(diào)整字號,再重新排版。可以直接看看:一淘首頁 的效果。



藍框內(nèi)是直接縮放圖片大小的效果,紅框內(nèi)是把字號從32號改成16號的效果。


CSS3 Media Queries 中用來定義設備分辨率的是 resolution 媒體特性,同時派生出兩個媒體特性,分別是 「min-resolution」和 「max-resolution」。該規(guī)范中規(guī)定:若查詢 Non-Square Pixels (專業(yè)術語,指高度與寬度不等的像素,可以理解為「非正方形像素」。計算機屏幕上及高清晰度視頻信號中的像素是正方形的(像素寬高比為 1:1)。標準清晰度數(shù)碼視頻信號中的像素都不是正方形的。例如:NTSC制式的像素高度大于寬度,而PAL制式的像素寬度則大于高度。)設備,在「min-resolution」查詢中指定的值必須與最稀疏尺寸進行比較,在「max-resolution」查詢中必須與最密集尺寸進行比較。對于「resolution」(沒有「min-」或「max-」前綴)從不查詢 Non-Square Pixels 設備。另外在 CSS image Level 3「image-resolution」屬性中定義了一些單位,比如「dppx」,各瀏覽器支持情況如下:

 

特性ChromeFirefox (Gecko)IEOperaSafari (WebKit)
基本特性不支持「1」「4」3.5 (1.9.1) 「2」99.5不支持 「1」「4」
dppx「4」16.0未知12.10「3」「4」

 


需要注意幾點:

  1. 「-o-min-device-pixel-ratio」的取值是分數(shù)比如「2 /3」,Demo,詳見:Opera Dev 的文章
  2. Firefox 16 之前版本是「min–moz-device-pixel-ratio」,min 后面有兩個「-」。
  3. 1dppx 相當于 96dpi。


顯而易見,通過 Media Queries 來實現(xiàn)「響應式圖片」還是很麻煩,CSS 代碼的可維護性不高,有一些 hack 的味道。我們更期望一種原生的語法來選擇不同的圖片,值得慶幸的是 CSS Image Level 4 中就實現(xiàn)了這種原生語法的「image-set」。


「image-set」語法:


 = image-set( [ , ]* [  | ] )
 = [  |  ] 


那么上面的例子我們可以改為:

background-image:url(http://alibuybuy-img11.stor.sinaapp.com/2013/01/ac30_T10s3JXn4XXXXnbIAn-105-160.png);/* 普通屏幕 */
background-image: -webkit-image-set(
    url(http://alibuybuy-img11.stor.sinaapp.com/2013/01/ac30_T10s3JXn4XXXXnbIAn-105-160.png) 1x,
    url(http://alibuybuy-img11.stor.sinaapp.com/2013/01/a8e5_T1947tXmJhXXcCfooh-210-320.png) 2x);/* Retina */


這里的單位「x」等同于「dppx」,將來是否統(tǒng)一還有待進一步討論。注意 Webkit 目前只實現(xiàn)了 url() 形式的取值,color、*-gradient() 等暫不支持,而且「x」取負值似乎也是合法的。


以下是一些常見移動設備的「min-device-pixel-ratio」值:


-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 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


【網(wǎng)站聲明】本站除付費源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學習交流,請勿用于商業(yè)用途。如損害你的權益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

由于實際運行環(huán)境是在瀏覽器中,因此性能還取決于JavaScript解釋器的效率,指定的FPS幀速在低性能解釋器中可能不會達到,所以這部分不是開發(fā)者能夠決定的,開發(fā)者能作的是盡可能通
本文將使用HTML5提供的VideoAPI做一個自定義的視頻播放器,需要用到HTML5提供的video標簽、以及HTML5提供的對JavascriptAPI的擴展。,HTML5中國,中國最大的HTML5中文門戶。
隨著 Hybrid 應用的豐富,HTML5 工程師們已經(jīng)不滿足于把桌面端體驗簡單移植到移動端,他們覬覦移動原生應用人性化的操作體驗,特別是原生應用與生俱來的豐富的手勢系統(tǒng)。HTML5 沒有提
你想要在自己網(wǎng)站上分享一個產(chǎn)品,或者是一個作品集,又或者僅僅只是一個靈感。在你發(fā)布到網(wǎng)上之前,你想讓它看起來有吸引力,專業(yè),或者至少得看起來像那么回事。那么你接下
H5廣告,包括H5廣告的設計流程,究竟有什么講究,和階段。為了能幫助更多的人了解H5廣告,我專門做了一個講義。同時,也讓我意外的收到了非常好反饋和認!這是對我的極大鼓勵!我的
本文主要內(nèi)容有:框架與組件、構建生態(tài)、開發(fā)技巧與調(diào)試、html、css與重構、native/hybrid/桌面開發(fā)、前端/H5優(yōu)化、全棧/全端開發(fā)、研究實驗、數(shù)據(jù)分析與監(jiān)控、其它軟技能、前端技術網(wǎng)
主站蜘蛛池模板: 亚洲精品久久视频 | 亚洲一区二区久久 | 国产视频一区二区 | 99精品国产一区二区青青牛奶 | 在线一区| 久久精品视频网站 | 国精产品一品二品国精在线观看 | 日韩欧美成人精品 | 日韩欧美不卡 | 成人精品视频 | 一区二区三区亚洲 | 男女免费观看在线爽爽爽视频 | 亚洲精品高清视频 | 中文字幕一区二区三区四区 | 久久久一区二区 | 久久久91 | 日本免费一区二区三区 | 国产三级精品视频 | 成人在线视频一区 | 国产黄色电影 | 美女天天操 | 免费在线精品视频 | 久久成人免费视频 | 亚洲免费在线观看 | 看片国产| 操久久 | 国产区一区二区三区 | 九九九视频 | 精品国产欧美一区二区三区成人 | .国产精品成人自产拍在线观看6 | 国产中文字幕av | 91成人在线| 国产亚洲精品久久久久久豆腐 | 亚洲综合天堂 | 免费的av | 亚洲黄色在线免费观看 | 久久国产精品视频 | 91精品国产91久久综合桃花 | 欧美一区在线视频 | 国产欧美一区二区三区在线看 | 国产精品色综合 |