<address id="ttjl9"></address>

      <noframes id="ttjl9"><address id="ttjl9"><nobr id="ttjl9"></nobr></address>
      <form id="ttjl9"></form>
        <em id="ttjl9"><span id="ttjl9"></span></em>
        <address id="ttjl9"></address>

          <noframes id="ttjl9"><form id="ttjl9"></form>

          移動端web頁面開發

          2018-7-26    seo達人

          如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

           字號

          工作了有一段時間,基本上都在搞移動端的前端開發,工作的過程中遇到過很多問題,bug的解決方案,記錄下來,以便后用?。。热莶⒉皇呛苋?,以后每遇到一個問題都會總結在這里,分享給大家!

          一、meta標簽相關知識

          1、移動端頁面設置視口寬度等于設備寬度,并禁止縮放。

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

          2、移動端頁面設置視口寬度等于定寬(如640px),并禁止縮放,常用于微信瀏覽器頁面。

          <meta name="viewport" content="width=640,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />

          3、禁止將頁面中的數字識別為電話號碼

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

          4、忽略Android平臺中對郵箱地址的識別

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

          5、當網站添加到主屏幕快速啟動方式,可隱藏地址欄,僅針對ios的safari

          
              
          1. <meta name="apple-mobile-web-app-capable" content="yes" />
          2. <!-- ios7.0版本以后,safari上已看不到效果 -->

          6、將網站添加到主屏幕快速啟動方式,僅針對ios的safari頂端狀態條的樣式

          
              
          1. <meta name="apple-mobile-web-app-status-bar-style" content="black" />
          2. <!-- 可選default、black、black-translucent -->

          viewport模板

          
              
          1. <!DOCTYPE html>
          2. <html>
          3. <head>
          4. <meta charset="utf-8">
          5. <meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no" name="viewport">
          6. <meta content="yes" name="apple-mobile-web-app-capable">
          7. <meta content="black" name="apple-mobile-web-app-status-bar-style">
          8. <meta content="telephone=no" name="format-detection">
          9. <meta content="email=no" name="format-detection">
          10. <title>title</title>
          11. <link rel="stylesheet" href="index.css">
          12. </head>
          13. <body>
          14. content...
          15. </body>
          16. </html>

          二、CSS樣式技巧

          1、禁止ios和android用戶選中文字

          .css{-webkit-user-select:none}

          2、禁止ios長按時觸發系統的菜單,禁止ios&android長按時下載圖片

          .css{-webkit-touch-callout: none}

          3、webkit去除表單元素的默認樣式

          .css{-webkit-appearance:none;}

          4、修改webkit表單輸入框placeholder的樣式

          
              
          1. input::-webkit-input-placeholder{color:#AAAAAA;}
          2. input:focus::-webkit-input-placeholder{color:#EEEEEE;}

          5、去除android a/button/input標簽被點擊時產生的邊框 & 去除ios a標簽被點擊時產生的半透明灰色背景

          a,button,input{-webkit-tap-highlight-color:rgba(255,0,0,0);}

          6、ios使用-webkit-text-size-adjust禁止調整字體大小

          body{-webkit-text-size-adjust: 100%!important;}

          7、android 上去掉語音輸入按鈕

          input::-webkit-input-speech-button {display: none}

          8、移動端定義字體,移動端沒有微軟雅黑字體

          
              
          1. /* 移動端定義字體的代碼 */
          2. body{font-family:Helvetica;}

          三、其他技巧

          1、手機拍照和上傳圖片

          
              
          1. <!-- 選擇照片 -->
          2. <input type=file accept="image/*">
          3. <!-- 選擇視頻 -->
          4. <input type=file accept="video/*">

          2、取消input在ios下,輸入的時候英文首字母的默認大寫

          <input autocapitalize="off" autocorrect="off" />

          3、打電話和發短信

          
              
          1. <a href="tel:0755-10086">打電話給:0755-10086</a>
          2. <a href="sms:10086">發短信給: 10086</a>

          四、CSS reset

          
              
          1. /* hcysun */
          2. @charset "utf-8";
          3. /* reset */
          4. html{
          5. -webkit-text-size-adjust:none;
          6. -webkit-user-select:none;
          7. -webkit-touch-callout: none
          8. font-family: Helvetica;
          9. }
          10. body{font-size:12px;}
          11. body,h1,h2,h3,h4,h5,h6,p,dl,dd,ul,ol,pre,form,input,textarea,th,td,select{margin:0; padding:0; font-weight: normal;text-indent: 0;}
          12. a,button,input,textarea,select{ background: none; -webkit-tap-highlight-color:rgba(255,0,0,0); outline:none; -webkit-appearance:none;}
          13. em{font-style:normal}
          14. li{list-style:none}
          15. a{text-decoration:none;}
          16. img{border:none; vertical-align:top;}
          17. table{border-collapse:collapse;}
          18. textarea{ resize:none; overflow:auto;}
          19. /* end reset */

          五、常用公用CSS style

          
              
          1. /* public */
          2. /* 清除浮動 */
          3. .clear { zoom:1; }
          4. .clear:after { content:''; display:block; clear:both; }
          5. /* 定義盒模型為怪異和模型(寬高不受邊框影響) */
          6. .boxSiz{
          7. -webkit-box-sizing: border-box;
          8. -moz-box-sizing: border-box;
          9. -ms-box-sizing: border-box;
          10. -o-box-sizing: border-box;
          11. box-sizing: border-box;
          12. }
          13. /* 強制換行 */
          14. .toWrap{
          15. word-break: break-all; /* 只對英文起作用,以字母作為換行依據。 */
          16. word-wrap: break-word; /* 只對英文起作用,以單詞作為換行依據。*/
          17. white-space: pre-wrap; /* 只對中文起作用,強制換行。*/
          18. }
          19. /* 禁止換行 */
          20. .noWrap{
          21. white-space:nowrap;
          22. }
          23. /* 禁止換行,超出省略號 */
          24. .noWrapEllipsis{
          25. white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
          26. }
          27. /* 文字兩端對齊 */
          28. .text-justify{
          29. text-align:justify;
          30. text-justify:inter-ideograph;
          31. }
          32. /* 定義盒模型為 flex布局兼容寫法并讓內容水平垂直居中 */
          33. .flex-center{
          34. display: -webkit-box;
          35. display: -moz-box;
          36. display: -ms-flexbox;
          37. display: -o-box;
          38. display: box;
          39. -webkit-box-pack: center;
          40. -moz-box-pack: center;
          41. -ms-flex-pack: center;
          42. -o-box-pack: center;
          43. box-pack: center;
          44. -webkit-box-align: center;
          45. -moz-box-align: center;
          46. -ms-flex-align: center;
          47. -o-box-align: center;
          48. box-align: center;
          49. }
          50. /* public end */

          六、flex布局

          1、定義彈性盒模型兼容寫法

          
              
          1. /*
          2. box
          3. inline-box
          4. */
          5. display: -webkit-box;
          6. display: -moz-box;
          7. display: -ms-flexbox;
          8. display: -o-box;
          9. display: box;

          2、box-orient 定義盒模型內伸縮項目的布局方向

          
              
          1. /**
          2. * vertical column 垂直
          3. * horizontal row 水平 默認值
          4. */
          5. -webkit-box-orient: horizontal;
          6. -moz-box-orient: horizontal;
          7. -ms-flex-direction: row;
          8. -o-box-orient: horizontal;
          9. box-orient: horizontal;

          3、box-direction 定義盒模型內伸縮項目的正序(normal默認值)、倒敘(reverse)

          
              
          1. /* Firefox */
          2. display:-moz-box;
          3. -moz-box-direction:reverse;
          4. /* Safari、Opera 以及 Chrome */
          5. display:-webkit-box;
          6. -webkit-box-direction:reverse;

          4、box-pack 對盒子水平富??臻g的管理

          
              
          1. /*
          2. start
          3. end
          4. center
          5. justify
          6. */
          7. -webkit-box-pack: center;
          8. -moz-box-pack: center;
          9. -ms-flex-pack: center;
          10. -o-box-pack: center;
          11. box-pack: center;

          5、box-pack 對盒子垂直方向富??臻g的管理

          
              
          1. /*
          2. start
          3. end
          4. center
          5. */
          6. /* box-align */
          7. -webkit-box-align: center;
          8. -moz-box-align: center;
          9. -ms-flex-align: center;
          10. -o-box-align: center;
          11. box-align: center;

          6、定義伸縮項目的具體位置

          
              
          1. /*-moz-box-ordinal-group:1;*/ /* Firefox */
          2. /*-webkit-box-ordinal-group:1;*/ /* Safari 和 Chrome */
          3. .box div:nth-of-type(1){-webkit-box-ordinal-group:1;}
          4. .box div:nth-of-type(2){-webkit-box-ordinal-group:2;}
          5. .box div:nth-of-type(3){-webkit-box-ordinal-group:3;}
          6. .box div:nth-of-type(4){-webkit-box-ordinal-group:4;}
          7. .box div:nth-of-type(5){-webkit-box-ordinal-group:5;}

          7、定義伸縮項目占空間的份數

          
              
          1. -moz-box-flex:2.0; /* Firefox */
          2. -webkit-box-flex:2.0; /* Safari 和 Chrome */
          3. .box div:nth-of-type(1){-webkit-box-flex:1;}
          4. .box div:nth-of-type(2){-webkit-box-flex:2;}
          5. .box div:nth-of-type(3){-webkit-box-flex:3;}
          6. .box div:nth-of-type(4){-webkit-box-flex:4;}
          7. .box div:nth-of-type(5){-webkit-box-flex:5;}

          藍藍設計www.syprn.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務

          日歷

          鏈接

          個人資料

          藍藍設計的小編 http://www.syprn.cn

          存檔

          亚洲va欧美va天堂v国产综合