本文交换了我www.gbtags.com文章。

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

1.在meta中取消电话邮箱的识别。

  1. <meta name="apple-touch-fullscreen" content="yes">

2.据说是全屏,可是实际ios7.1无效果,查看了百度的大站点的web站点。都已经移除。

3.如今開始讲我们要用到核心的东西。

3.1首先说的是

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

这是让我们加入应用之后,在桌面打开图标的时候能够全屏显示。可是上面的顶部工具栏上会一块黑色区域。

怎样解决?

3.2

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

black-translucent的作用是顶部工具栏,背景透明,字体颜色为白色,当让也有black和white选项,百度是设置为white,我測试中会发现其顶部还是一块黑色,和难看,我測试的版本号是iPhone ios7.1版本号。

3.3当然上面这些操作可能不是每一个人都会去保存下来去做的,假设保存,请记得使用html5的缓冲技术,这个下次再扯,还有保存中用到的图片呢?

  1. <link rel="apple-touch-icon-precomposed" href="http://wap.baidu.com/static/img/webapp/img/icon_114.png">

假设你想做的更加适配性大。能够加入size=“114*114”这样,这里大家要注意我用的是

  1. apple-touch-icon-precomposed

不是

  1. apple-touch-icon

就是的ios7.0之前生成的icon会自己带有一个阴影,所以请注意。

3.4,那用户第一次游览这个网页(web app)中怎样做的跟个native app类似呢?

  1. <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no,minimal-ui">

前面部分是对屏幕大小的控制,最基本的是后面

  1. minimal-ui

还有,切记,不要分开content的内容。多个meta使用,会有点小问题,读者自己能够測试。

4.接下来我们聊得是media query技术,非常多同学做适配的使用用到比方

  1. <link rel="stylesheet" media="screen and (orientation:portrait) and (min-width:960px)" href="style.css" />

对于这个,我认为能够看下bootstrap和appcan等做他们的解决方案,做的非常成熟了。

今天我们讲的是ios。当然聊点新的media query 技术,看招:

  1. /*中分辨率屏幕*/
  2. @media (-webkit-min-device-pixl-ratio: 1){
  3. //css代码
  4. }
  5. /*高分辨率屏幕*/
  6. @media (-webkit-min-device-pixl-ratio: 1.5){
  7. //css代码
  8. }
  9. /*超高分辨率屏幕(传说中的Retina屏)*/
  10. @media (-webkit-min-device-pixl-ratio: 2){
  11. //css代码
  12. }
  1. window.devicePixelRatio是设备上物理像素和设备独立像素(device-independent pixels (dips))的比例。
  2. 公式表示就是:window.devicePixelRatio = 物理像素 / dips

举个样例iphone4/4s。他的宽度是320,可是他的分辨率中的宽已经是640,所以是 @media (-webkit-min-device-pixl-ratio: 2)

5.接下来是个题外话。个人看到别人写的,没有測试。

  1. <!-- uc强制竖屏 -->
  2. <meta name="screen-orientation" content="portrait">
  3. <!-- QQ强制竖屏 -->
  4. <meta name="x5-orientation" content="portrait">
  5. <!-- UC强制全屏 -->
  6. <meta name="full-screen" content="yes">
  7. <!-- QQ强制全屏 -->
  8. <meta name="x5-fullscreen" content="true">
  9. <!-- UC应用模式 -->
  10. <meta name="browsermode" content="application">
  11. <!-- QQ应用模式 -->
  12. <meta name="x5-page-mode" content="app">

ok,东西讲完了,附上已经改动好的样式的项目地址(请git下来。假设兴趣改动好了想push跟博主要shh秘钥):

  1. https://code.csdn.net/qazwsx2345/node_activity

版权声明:本文博主原创文章,博客,未经同意不得转载。

如何ios中间Safari在开发了类似的native app像全屏webapp的更多相关文章

  1. IOS应用在ios7(iPhone5/iPhone5s)上不能全屏显示

    前言 [IOS应用在iOS7系统或者iPhone5/iPhone5s上不能全屏显示,应用画面上下各有1条黑色,但是在其他系统或者型号的手机上却是正常显示 Paste_Image.png Paste_I ...

  2. iOS Swift WisdomScanKit二维码扫码SDK,自定义全屏拍照SDK,系统相册图片浏览,编辑SDK

    iOS Swift WisdomScanKit 是一款强大的集二维码扫码,自定义全屏拍照,系统相册图片编辑多选和系统相册图片浏览功能于一身的 Framework SDK [1]前言:    今天给大家 ...

  3. ios 使用Safari浏览器跳转打开、唤醒app

    常常使用Safari浏览器浏览网页点击url会唤醒该站点的手机版app 须要在app的project中设置 1.打开project中的myapp-Info.plist文件 2.打开文件里新增URL T ...

  4. Android 开发 Fresco框架点击小图显示全屏大图实现 ZoomableDraweeView

    目标需求 实现一张小图片,被点击后变成一个在整个屏幕上显示的大图片.类似于微信朋友圈的图片. 实现流程 1.Fresco基本初始化 2.下载并且导入ZoomableDraweeView 它是实现大图的 ...

  5. iOS学习之WebView的使用 (主要是下面的全屏半透明实现)

    1.使用UIWebView加载网页 运行XCode 4.3,新建一个Single View Application,命名为WebViewDemo. 2.加载WebView 在ViewControlle ...

  6. 【Bugly安卓开发干货分享】Android APP 快速 Pad 化实现

    项目背景 采用最新版本手机 APP(之后称为 MyApp)代码,实现其 Pad 化,为平板和大屏手机用户提供更好的体验.为实现 MyApp 的 Pad 化工作,需要我们首先来了解一下 MyApp 项目 ...

  7. Native App开发 与Web App开发(原生与web开发优缺点)

    Native App开发 Native App开发即我们所称的传统APP开发模式(原生APP开发模式),该开发针对IOS.Android等不同的手机操作系统要采用不同的语言和框架进行开发,该模式通常是 ...

  8. Safari 前端开发调试 iOS 完美解决方案

    转http://www.2cto.com/kf/201403/283404.html afari 前端开发调试 iOS 完美解决方案 2014-03-05      0个评论    来源:Safari ...

  9. iOS开发系统类功能划分

    0.OC语法基础 CHOCBase Object C语法学习笔记(一) Object C语法学习笔记(二) 1.UI类 自定义控件程序运行流程 setNeedsLayOut和setNeedsDispl ...

随机推荐

  1. [WPF] 使用Grid与GridSplitter排版布局

    原文:[WPF] 使用Grid与GridSplitter排版布局 前言 在開發應用程式時,一個很重要的工作項目就是設計使用者介面的排版布局.WPF中所提供的Grid控制項,讓開發人員擁有將版面分割為欄 ...

  2. Oracle基础(五)pl/sql进阶(分页过程)

    编写分页过程         通过pl/sql实现分页过程,再该过程中由简单到难一步步深入,目的在于通过该案例熟悉pl/sql的各种存储过程,包,游标.怎样在java中调用等内容的学习. 1.无返回值 ...

  3. bootstrap之DumpWindowHierarchy

    DumpWindowHierarchy package io.appium.android.bootstrap.handler; import android.os.Environment; impo ...

  4. ipconfig /flushdns 清除系统DNS缓存

    1.ipconfig /flushdns的作用 ipconfig /flushdns 这是清除DNS缓存用的. 当訪问一个站点时系统将从DNS缓存中读取该域名所相应的IP地址,当查找不到时就会到系统中 ...

  5. cocos2d-x 2.2.3 创建项目的方法

    直接复制粘贴到txt文本,然后修改后缀为.bat,然后将bat文件放到tools\project-creator的目录下即可. :project_input @echo 请输入项目名称,按回车,例:H ...

  6. DESCryptoServiceProvider加密解密的简单使用例子

    DES.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...

  7. 使用SharePoint管理中心管理服务

    使用SharePoint管理中心管理服务 为了管理服务应用程序.场管理员要么使用管理中心,要么使用PowerShell. 管理服务应用程序页面列出了场上执行的服务.你能够管理他们. 很多服务都有自己的 ...

  8. .net读取异步Post的内容

    //读取微信Post过来的XML内容                 byte[] input = HttpContext.Current.Request.BinaryRead(HttpContext ...

  9. 怎么样MyEclipse配置Tomcat?

    1.下载tomcat免安装版.tomcat路径不包含空格 http://download.csdn.net/detail/u014112584/7549191 2.windows -preferenc ...

  10. 如何自动以管理员身份运行.NET程序?

    原文:如何自动以管理员身份运行.NET程序? windows 7和vista提高的系统的安全性,同时需要明确指定“以管理员身份运行”才可赋予被运行软件比较高级的权限,比如访问注册表等.否则,当以普通身 ...