移動端開發

來源:互聯網
上載者:User

標籤:

1.pixel

iphone5說自己是640*1136的屏,那麼咱們在一個頁面中寫一個div是640*200px的樣子,但是會超出,為什嗎?
chrome調整時候會是320*568,為什嗎?

1.Retina屏
2.沒設定<meta name="viewport" content="width=device-width,initial-scale=1.0"/>

ipone5說自己是640寬意思是說的是物理像素,是固定的一個單位,多大就多大

但是咱們開發時說的像素是邏輯像素,也就是瀏覽器使用的抽象的一個單位是可以根據不同的裝置去進行變大變小的

裝置像素縮放比DevicePixelRatio(DPR),通過這個東西來控制邏輯像素和物理像素之間的關係的

邏輯像素640=裝置像素縮放比2*320像素

ipone5的裝置像素縮放比就是2

也就是說1邏輯像素==4物理邏輯,從一個方向上來說就是1:2的比例

一般的高清屏的dpr都是大於等於2的,腎6就是3的....所以那麼貴還是有道理的...


手機螢幕和pc的螢幕不一樣,是retina高清屏

2.viewport視圖


1.老以前的諾基亞時代,訪問一個pc網站的時候,只能訪問到左上的一部分;
1.一個pc端的頁面在移動端上也是可以把整個頁面都示範完的,只不過會縮小顯示,但是經過處理,就可以按照設計的想法
在移動端以不同的方式來示範,也就是響應式的技術


其實這個時候的處理就是要把整個頁面給放到一個叫做viewport的東西裡面,然後再把viewport給縮放一下,最後再渲染到
手機螢幕中


3.meta標籤

通過meta標籤來改變咱們viewport的一些東東,就可以使咱們的頁面在移動端渲染的更完美

width n device-width 設定寬度為裝置的寬度,當然也可以設定別的
initial-scale 1.0 設定頁面的縮放,
也就是viewport的縮放比例,
這個知識點不重要,不要管了,就記住設成1就好了
minimum-scale 設定最少縮放 不用
maximum0scale 設定最多縮放 不用
user-scalable 使用者能否用手指來縮放


*1.手機螢幕和咱們理解的pc螢幕不一樣,是retina屏 他說的是物理像素,咱們說的是邏輯像素
*2.要做移動端的項目,或者是響應式的項目,必須加
<meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no"/>

 

4.移動布局

響應式:效能不是最優,因為樣式要寫很多,但是能減少重複開發

響應式百分比布局,和flex彈性布局安卓4.4

百分比 flex布局 vw vh rem
@media

媒體查詢來適應不同的固定寬度設計,會從一組樣式轉換為另一組樣式,平滑友好的轉換


*彈性圖片

這個圖片本身是有一個大小的吧,在做項目的過程中應該讓他根據螢幕的寬度去縮放,但是
不能超過自己的本身一個最大值,
.a img{
max-width: 100%;
height: auto;
display: block;
margin: 0 auto;
}
圖片根據容器的改變而改變,不然加meta後,圖片都會是本來的大小


*5.特別樣式處理

高清圖片

在移動頁面上渲染圖片,為了避免圖片模糊,100*100的,在高清屏下是
用200*200的像素來處理;
但是一般是這樣的,設計師出的圖都是2倍於螢幕解析度的(基於ipone6 375*667)那麼實際的圖片就是750*1334
所以圖片咱們還是直接拿過來用就ok~
100*100 200*200


*如果盒子裡面放的是和盒子一樣尺寸的圖片的話,會失真,解決方案是,放兩倍於盒子尺寸的圖片;


1像素邊框
1像素邊框用2px來渲染,所以有這麼個方法;
.a{
width: 100px;
height: 100px;
border-top: 1px solid #333;
position: relative;
}
.a:after{
content: "";
position: absolute;
bottom: 0px;
width: 100%;
border-bottom: 1px solid #333;
transform: scaleY(0.5);
}


rem 根據根項目的字型大小來搞來搞去
html {
font-size: 62.5%; /* 10÷16=62.5% */
}
@media only screen and (min-width: 481px){
html {
font-size: 94%!important; /* 15.04÷16=94% */
}
}
@media only screen and (min-width: 561px){
html {
font-size: 109%!important; /* 17.44÷16=109% */
}
}
@media only screen and (min-width: 641px){
html {
font-size: 125%!important; /* 20÷16=125% */
}
}


vw:viewpoint width,視窗寬度,1vw等於視窗寬度的1%。
vh:viewpoint height,視窗高度,1vh等於視窗高度的1%。
vmin:vw和vh中較小的那個。
vmax:vw和vh中較大的那個。
IE9+局部支援,chrome/firefox/safari/opera支援,ios safari 8+支援,
android browser4.4+支援,chrome for android39支援

 

多行文本溢出
overflow : hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;

 

移動端開發

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.