Iphone6的物理分辨率是750*1334,邏輯分辨率是375*667。網上找了一張750*1334的圖,如何才能在小程序中完整顯示
<image src="../../image/Straight-Road.jpg"></image>
image {
width:750px;
height: 1334px;
}
效果如下:
原圖:
那麼試試邏輯分辨率
image {
width:375px;
height: 667px;
}
因爲小程序的上部導航欄的存在,上下顯示會不全,但是左右是完整顯示的,如下
(雖然不知道爲什麼改成邏輯分辨率就正常了,不過說明一點,邏輯分辨率是我們需要的)
那麼我想達到在iPhone6上也顯示完整這個圖,應該也是邏輯分辨率414*736。預覽圖就不放了
現在想象一個場景,我有兩臺設備,一臺6,一臺6p。想讓這一張圖在兩臺設備上顯示完整,CSS就得隨着設備型號去動態改變。現在小程序幫我們實現這個不同設備下分辨率一致的問題。
iPhone6設備下
image {
width:750rpx;
height: 1334rpx;
}
會換算成
image {
width:375px;
height: 667px;
}
那麼在6p下
750rpx會換算成414px
相當於
1rpx=414/750px=0.552px
同樣還有
750rpx=320px
相當於
1rpx=320/750px=0.42px。
跟文檔上給出的換算比例一致。
至於爲什麼6上的是750rpx=375px。(這裏的px是邏輯分辨率)只能說是規定,我也不知道爲什麼要這麼規定。
rpx只是一個單位,請回顧一下我們的思路
1,我想在iPhone6全屏顯示一張分辨率爲750*1334的圖片,設置css寬度是375px(邏輯分辨率),設置物理分辨率750只顯示一半
2, 當我更換設備時候,需要重寫寬高,小程序提供了rpx自動幫我們換算,而且規定iPhone6 750rpx=375px。
因爲我想設置圖片爲375px,那麼換成rpx,自然就是750px。
3.切換設備的時候,根據不同的設備,750rpx自動換成相應的px,目的是讓圖片在該邏輯分辨率上全屏顯示。
那麼我們可以理解成,750rpx這個東西,就是各個設備下的屏幕寬度。假如我來設計,就應該設計成iphone6 1rpx=375px。這樣rpx自動就是%