成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

移動前端分享:對于移動設備頁面尺寸的理解

移動開發 Android
為移動設備制作前端頁面,往往會遇到很多令人迷惑的情況,本文中,我整理了一些相關的概念和方法,與大家分享一下。

為移動設備制作前端頁面,往往會遇到很多令人迷惑的情況,本文中,我整理了一些相關的概念和方法,與大家分享一下。


設備像素和CSS像素

css像素是固定不變的,瀏覽器上縮放的話,css像素會被拉伸或者縮小,設備像素不變

100%zoom : css像素 和設備像素 一致

[[117516]]

zoom被縮放 : css像素在設備像素里 被縮放

[[117517]]

[[117518]]


屏幕尺寸和窗口尺寸

屏幕尺寸和窗口尺寸較好理解

請輸入圖片描述

請輸入圖片描述

但是需要注意的是:當縮放窗口的時候,窗口尺寸更改了,這一點對于后面理解移動端尺寸有一定幫助

請輸入圖片描述

解釋:當放大頁面的時候,窗口尺寸變小了,為什么呢?因為窗口尺寸(window.innerWidth)的定義是窗口里能展現的像素寬高,頁面放大了,頁面里展現的css像素變少了,所以窗口尺寸變小了,相反縮小頁面的時候,窗口尺寸變大了。


pc上的viewport

viewport并非是移動端的專利,viewport是瀏覽器內部的一個數據,它約束html的寬度。viewport基本等同于窗口尺寸,所以當你縮放窗口的時候viewport會改變,相應的html寬度也會改變。

請輸入圖片描述

這個例子中,由于放大頁面,viewport變小,而頁面中的頭部藍條css設置為100%,跟隨viewport變化,所以右側logo暴露了出來,藍條沒有覆蓋100%的文檔寬度,而只取viewport的寬度。


移動終端的viewport

移動終端的viewport更加麻煩一些,有兩種viewport,分別是展示viewport(visual viewport)和布局viewport(layout viewport)。

請輸入圖片描述

上面這張圖片你可以這么理解:

手機是一個放大鏡,它游走在頁面上,手機上展示的寬高為visual-viewport,而整個頁面的寬高是layout-viewport。

好奇的朋友一定會問,為什么要這樣呢,何必這么麻煩?這是因為手機的尺寸太小了,“移動瀏覽器廠商想給它們的客戶盡可能的提供***的體驗,這現在指的就是「盡可能的跟桌面一樣」。因此耍一些花招是必要的。”

那么,假如我的頁面沒有經過任何優化,手機默認的layout-viewport是多大呢,“layout viewport有多寬?每個瀏覽器都不一樣。Safari iPhone為980px,Opera為850px,Android WebKit為800px,***IE為974px。”

這就是為什么普通一個頁面在iphone上看會變得很大的原因,iphone默認把你的頁面的viewport設置為980px,也就是說html的100%寬度默認為980px;

#p#

現代移動端網頁設計與viewport

雖說visual-viewport是為了用戶看得更清楚而做的設定,但實際上,這帶來了用戶體驗上的下降,用戶往往需要縮放和移動頁面。所以現代針對移動端的網頁設計(或者響應式設計)通常采用的方法是,精簡頁面內容,放大視覺元素,避免體驗不好的縮放和移動頁面。包括boostrap在內的眾多前端框架也無不在設計上采用這種解決方案。

要滿足這種設計,首先要保證一件事情就是,讓layout-viewport就是visual-viewport,消除兩個viewport帶來的頁面差異。

蘋果公司推動的的viewport meta可以解決這個問題,viewport的主要作用是指定layout-viewport的大小。

比如:

<meta name="viewport" content="width=device-width">

這個設定其實就是讓layout-viewport和visual-viewport保持一致,回想一下上面那張把手機當做放大鏡的圖片,有了這個設定以后,手機就不是放大鏡了,而是把整個頁面裝在手機里。

此外,viewport還可以設置 initial-scale , user-scalable


蘋果給的一些例子

關于Viewport,safari的開發官網給了一些例子,可以加深我們對這個問題的理解:

請輸入圖片描述

請輸入圖片描述

請輸入圖片描述

請輸入圖片描述

可以看到決定頁面展示效果的兩個因素,width和scale,scale類似pc端的放大縮小

一個默認寬度為100%頁面的樣子

請輸入圖片描述

默認寬度 + initial scale = 1.0

請輸入圖片描述

寬度設為320 + 默認 initial scale

請輸入圖片描述

參考:

一、http://weizhifeng.net/viewports.html

二、http://weizhifeng.net/viewports2.html

三、https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html

原文地址:http://blog.segmentfault.com/fishenal/1190000000495454

責任編輯:閆佳明 來源: blog.segmentfault
相關推薦

2014-12-10 14:34:40

2015-07-30 10:04:43

viewport前端

2015-10-28 14:06:26

移動設備數據保護

2011-01-24 15:15:09

2013-10-12 16:45:42

SAP

2011-01-07 10:54:02

2013-02-19 09:56:05

2013-09-04 14:49:10

移動Web前端開發設計理念

2012-01-06 09:49:01

圖標移動設備

2011-12-13 09:43:44

2013-08-26 10:19:03

移動設備移動應用

2012-06-14 16:04:56

移動端圖片分享

2016-03-21 10:05:18

2011-08-11 13:31:41

移動設備

2012-05-04 23:24:10

應用

2016-04-29 13:29:32

2011-06-29 14:01:40

HTML 5

2012-03-20 15:06:40

NFC功能移動設備

2012-06-04 10:48:24

HTML5

2011-06-16 10:00:28

視覺設計
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 涩涩鲁亚洲精品一区二区 | 99re在线| 九色在线 | 成人免费大片黄在线播放 | 男女爱爱福利视频 | www精品美女久久久tv | 久久不卡 | 美国黄色毛片 | 日韩视频 中文字幕 | 国产1区2区在线观看 | 91手机精品视频 | 国产日韩中文字幕 | 一级a性色生活片久久毛片 一级特黄a大片 | 中文字幕1区2区3区 亚洲国产成人精品女人久久久 | 欧美日韩高清一区 | 久久久成人一区二区免费影院 | 在线欧美 | 亚洲精品乱码久久久久久蜜桃 | 午夜看看 | 久久久久久久一区二区三区 | 国产精品1 | 北条麻妃国产九九九精品小说 | 中文字幕 国产精品 | 久久成人精品视频 | 色综合色综合色综合 | 欧美精品一区二区三区在线播放 | 成人福利在线视频 | 黄色片亚洲 | 欧美日韩亚洲系列 | 成人日韩精品 | 欧美精品一区二区免费视频 | 五月综合久久 | 亚洲五码在线 | 成人h动漫亚洲一区二区 | 国产精品毛片一区二区三区 | 久久久91精品国产一区二区三区 | 久久69精品久久久久久久电影好 | 免费久久久 | 国产视频久久久 | 国产精品亚洲综合 | 午夜色婷婷 |