DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> HTML基礎知識 >> HTML5教程 >> HTML5移動端手機網站開發流程
HTML5移動端手機網站開發流程
編輯:HTML5教程     

最近一直在研究移動手機網站的開發,發現做手機網站沒有想象中的那麼難。為什麼會這麼說呢?我們試想下:我們連傳統的PC網站都會做,難道連一個小小的手機網站難道都搞不定嗎?其實手機網站就是一個微縮版的PC網站罷了!至於為什麼覺得難、覺得無從下手。

覺得有以下幾點:

一、沒有完整的思路和流程

就像做網站的流程一樣,如果你能知道它的流程,我相信就不會覺得做手機網站難!真正難的是你沒有思路。

二、把html5這門技術想的高深莫測

好像覺得學會用html5+css3做手機網站,就相當於學會了頂尖的絕世武功。其實你錯了!不要把html5這玩意想的太高深,其實做手機網站,真正意義上用不到什麼的html5的強大功能。(可能對於一些不懂什麼技術的小白而言:你的手機網站是用HTML5+CSS3做的啊,簡直牛逼呀!能用上目前互聯網上最新最前沿的技術。其實明眼人一看,就知道是用什麼技術做的。俗話說的好:"外行看熱鬧,內行看門道")

好了扯了這麼多,下面就說說怎麼來開發移動手機網站吧!

基本上開發手機網站,可大致分為兩大類。一類是用框架開發手機網站。一類是自己手寫手機網站。

一、框架開發手機網站

一般用現在常用的開發框架有:目前Web前端最火的框架(BootStrap)、Jquery mobile..當然可能還有一些移動端開發的框架,這些我就沒具體去研究過。

為什麼說BootStrap是目前前端最火熱的開發框架呢?

因為bootstrap自帶響應式布局(柵格系統),而且能做到移動設備優先的原則。

運用bootstrap來開發網站有什麼好處呢?

1.不懂設計也可以做網站

就算不懂設計,你的網頁在Bootstrap的幫助下,也能擁有超高顏值。它強大的內置樣式庫讓你的作品變成尤物。

主要體現在:字體文件和bootstrap自帶的UI樣式。(為廣大不會UI設計的程序員,提供了福音)

2.上手快

你可以專心解決問題,冗繁的細節都丟給Bootstrap操心。可以做到一次開發,就可適配所有終端,並且能迅速上手並建出網站原型。還提供很多豐富的插件,就算你不會JS,基本能看懂常見的API,網站上的效果,基本能解決。

缺點:

1.不遵循最佳實踐

我們在使用Bootstrap時遇到的最大問題之一是你的DOM元素上將擁擠大量的類。這打破了良好的web設計基本規則之一,HTML不再有語義,而且內容和表示不再分離。前端純粹主義者會覺得這相當令人討厭,以為它使可擴展性、重用性和維護性遇到了更大的挑戰。

2. Bootstrap 太重

直接點說:就是CSS和JS有點點大。CSS壓縮後115k,JS壓縮後35k

如果你想要使用Bootstrap的所有功能,你應該好好考慮資源的加載時間。當然,對於一些地方這可能不是問題,但是在新西蘭互聯網不得不橫跨太平洋,這時數據達到那兒將是很緩慢的。因此考慮你的目標市場。

相信任何框架都有它的優點,同時也是有它的缺點的。沒有一個產品是很完美的,所以根據自身實際情況進行選擇。至於一些其它框架暫時不做過多的解釋了,相信只要你肯願意百度一下,就可以找到你想要的答案。

移動手機端開發流程

二、手寫手機網站

一般我們自己手動開發手機網站的話,基本可以劃分兩類來做到。一類是通過在網頁頭部添加meta標簽進行實現(網頁指html5的格式來開發)。另一類是通過CSS3的Media標簽(媒介查詢)來實現。不了解媒介查詢的朋友,可以看看這篇文章:響應式布局。

在這裡我們詳細講解下,利用添加meta標簽來做手機網站。

基本在網頁頭部我們只需添加四個meta標簽就可以實現一個手機網站的框架。我一起來看看是哪些meta標簽。

1、添加viewport標簽

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />

詳細屬性:

width  ----  viewport的寬度(width=device-width意思是:寬度等於設備寬度)

height ------  viewport的高度(height=device-height意思是:高度等於設備寬度)

initial-scale ----- 初始的縮放比例

minimum-scale ----- 允許用戶縮放到的最小比例

maximum-scale ----- 允許用戶縮放到的最大比例

user-scalable ----- 用戶是否可以手動縮放

關於viewport的詳細原理和知識點,各位就百度吧!在這裡我就不做詳細的講解了。

2、禁止將數字變為電話號碼

<meta name="format-detection" content="telephone=no" />

一般情況下,IOS和Android系統都會默認某長度內的數字為電話號碼,即使不加也是會默認顯示為電話的,so,取消這個很有必要!

3、iphone設備中的safari私有meta標簽

<meta name="apple-mobile-web-app-capable" content="yes" />

它表示:允許全屏模式浏覽,隱藏浏覽器導航欄

4、iphone的私有標簽

<meta name="apple-mobile-web-app-status-bar-style" content="black">

它指定的iphone中safari頂端的狀態條的樣式

默認值為default(白色),可以定為black(黑色)和black-translucent(灰色半透明)

另外還有一個個性化的link標簽,它支持用戶將網頁創建快捷方式到桌面時,其圖標變為我們自己定義的圖標。比如手機騰訊網上的標簽:

<link rel="apple-touch-icon-precomposed" href="http://3gimg.qq.com/wap30/info/info5/img/logo_icon.png">

不過騰訊對這個png圖標的命名並不規范,常規我們要求文件名應為 apple-touch-icon.png 或 apple-touch-icon-precomposed.png ,前者的命名iOS會為這個圖標自動添加圓角、陰影和高亮覆蓋層,後者則不會添加這些效果。

手機網站基本框架代碼:

XML/HTML Code復制內容到剪貼板
  1. <!doctype html>  
  2.   
  3. <html>  
  4.   
  5. <head>  
  6.   
  7. <meta charset="utf-8">  
  8.   
  9. <title>手機網站</title>  
  10.   
  11. <meta name="keywords" content="" />  
  12.   
  13. <meta name="description" content="" />  
  14.   
  15. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />  
  16.   
  17. <meta name="format-detection" content="telephone=no" />  
  18.   
  19. <meta name="apple-mobile-web-app-capable" content="yes" />  
  20.   
  21. <meta name="apple-mobile-web-app-status-bar-style" content="black">  
  22.   
  23. <meta name="author" content="duanliang, duanliang920.com" />  
  24.   
  25. <style>  
  26.   
  27.     body{font-size:62.5%;font-family:"Microsoft YaHei",Arial; overflow-x:hidden; overflow-y:auto;}   
  28.   
  29.     .viewport{ max-width:640px; min-width:300px; margin:0 auto;}   
  30.   
  31. </style>  
  32.   
  33.  </head>  
  34.   
  35.     
  36.   
  37. <body>  
  38.   
  39.     <div>  
  40.   
  41.         大家好!我是段亮,這是我的第一個手機網頁哦!   
  42.   
  43.     </div>  
  44.   
  45. </body>  
  46.   
  47. </html>  

下面是我做的基於微信二次開發的手機頁面案例:

其實在移動端的開發讓我糾結的是在字體單位上的選擇。

隨著CSS3的興起,有一種叫rem的單位漸漸的出現在我們的視野中。它是一個相對單位,能實現響應式的那種。它是相對於html根元素來設置當前文字大小,或者寬高的。因為它是一個不固定值,不像PX。聽說在PX這個單位在PC和移動的解析不同,所以才使用rem的。這點我也不是很清楚,也請教了一些做手機網站的高手,了解了一些信息。

原來大部分的人依舊是使用PX來布局,rem都用的少。目前來說,就移動端的淘寶首頁就是采用rem來作為單位來布局的。關於使用rem單位這個問題以及它的好處:還得需要大神來解答這個問題,畢竟我也只是剛接觸。

關於手機網站的調試問題

一般我們采用的:在浏覽器調試+真機測試,因為浏覽器畢竟只是一個模擬工具,實際開發的話,我們還得用真機去測試。

比如:(Android類手機,iPhone5、5s、6、6Plus...)

而在浏覽器上測試,可以chrome(谷歌浏覽器)的F12調試工具:有個手機樣的小圖標,點擊就能模擬手機測試。

如下圖:

手機測試效果圖

或者用火狐的測試工具:按shift+ctrl+M進行查看。

寫在最後:其實等你真正熟悉做手機網站這套流程後,你會發現做手機網站沒有你想象的那麼難,真正難的是不知道如何去下手。對於移動端的JS效果可能和PC端有些不同,因為移動端有移動端的事件,這也是我為什麼老是強調學JS,是學原生JS,而不是學Jquery。我的下篇文章就會講到"為什麼學JS要學原生JS",喜歡的朋友可以關注下博客。

原創作者:段亮博客

本文鏈接:http://www.tuniuboke.com/post/218.html

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved