移動端自適應疑問?
&
用這,然後按照320設備寬開發,能夠達到各個設備自適應。我就很奇怪,為什麼還要用百分比,rem,流式,等一些比較複雜的自適應方案呢?誰能給我解釋下呀?
請使用手淘的flexible: GitHub - amfe/lib-flexible: 可伸縮布局方案
詳細教程:使用Flexible實現手淘H5頁面的終端適配
確實也可以將就用。
然而都用同一個布局的話,小屏的布局放到大屏上,所有的控制項、文字會很大,邊距也很大(物理尺寸),;字體會發虛(非整數);豎屏上能放下的內容,轉一個成橫屏只能顯示上半部分(屏幕比例變化)。因為視窗定寬的方式也可以實現自適應的效果,但是要不給縮放相關的屬性。
像這樣:
&我們就可以直接通過px為單位開發然後利用viewport的特性,它會自己縮放到設備的完美視窗寬度,可以使用這種方法進行一些布局簡單的頁面,但是布局稍微複雜就會有失真的情況出現。所以我們通常用rem的方式進行適配。
像淘寶就更高端點,考慮到dpr,那就意味著設計稿也要對等提供,所以淘寶只是一個頁面會有多個寬度不同的設計稿。
參考:http://www.chengfeilong.com/mobile-layout要適配 viewport 是要動態生成的,一般是根據設備的 DPR 來生成。你這樣寫死的話,就不能適配高分屏了。
具體見:
移動端適配方案(上) · Issue #17 · riskers/blog · GitHub移動端適配方案(下) · Issue #18 · riskers/blog · GitHub使用rem做適應,
rem是使用基於html根元素(html)字體大小作為標準(1em)寬度的
單位在寬度描述上類似於百分比
但比百分比好的一點是,它可以設置基於寬度百分比的高度
比如:
將html字體設置為屏幕寬度的 1/100,那麼當我們使用1rem來設置
元素的寬度時,其元素寬度為屏幕的
1/100,同樣我們使用1rem來設置元素
的高度時,其元素高度為屏幕寬度的 1/100。
示例代碼:&
&
&
&
&
&
&
&
&
&
&
&
&
&
自適應開發就是垃圾 精確推送才是王道不同手機屏幕 就一定是等比例嗎 胡鬧 必須和ui配合
不用流式的話,你怎麼解決屏幕橫放,寬度變大的問題?屏幕右邊會有大量的留白
html {
font-size: calc(100vw / 3.75); width: 100%; min-width: 320px; max-width: 750px;@media only screen and (min-width: 750px) {
font-size: 200px; }}body {
font-size: 0;}就是以375寬度的屏幕作為基準(如果想用320的,就把3.75修改成3.2,對應的,在媒體查詢裡面做對應的換算)然後設計師會給出以750px為寬度的設計圖,例如裡面有一個長度為128px的東西,對應的rem就是0.64rem;當然使用calc和vw對瀏覽器版本有一定的要求推薦閱讀:
※HTML5與Qt QML僅從做UI的角度比較,哪個更便捷,哪個更強大,哪個(被渲染)性能更高呢?
※web開發的迷茫,希望有前輩能告訴一下方向?
※原型設計ui設計h5類等生產工具大爆發,設計師們應該何去何從?
※HTML 5 遊戲是否有存在的必要?
※基於PhoneGap開發的App性能及體驗怎麼樣?
TAG:Web開發 | 前端開發 | JavaScript | HTML5 | Nodejs |