移动端页面开发的一些常用的设置

viewport 视口(可视区窗口)设置详解

当我们试图在iPhone中输出屏幕宽度的时候,会发现屏幕宽度是980,居然和pc屏幕宽度差不多大

苹果主导的这些手机厂商,为了使用户获得完整的WEB体验,很多设备都会欺骗浏览器返回一个数值较大的视口,告诉浏览器,别以为我身子小,但是我想以980px宽度显示这个页面(分辨率和视口没有关系(开发中根据视口来算的))

视口对于我们实现响应式是很不方便的。980太大了,不符合我们心中的期待,我们心中认为手机屏幕尺寸应该在320到400之间

默认不设置viewport一般可视区宽度在移动端是980,所有的手机响应式网站,都要加上meta viewport视口约束标记

解决这个问题只要约束视口即可:

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

一个id和name为 viewport的meta元标记,就表示现在要约束视口了

那么具体约束的规则写在content中,每个约束规则用逗号隔开:

width=device-width    命令视口的宽度,变为设备的宽(以1024*768屏幕为标准 iPhone等手机通常为320到380之间),(number||device-width)

initial-scale=1.0      命令视口默认的缩放等级为1(可以设置为任何数字,以倍数计算,IOS10没效果)

minimum-scale=1.0    命令视口最小缩放等级为1(可以设置为任何数字,以倍数计算,IOS10没效果)

maximum-scale=1.0    命令视口最大缩放等级为1(可以设置为任何数字,以倍数计算,IOS10没效果)

user-scalable=no      不允许用户缩放页面(yes||no)(可以设置为任何数字,以倍数计算,IOS10没效果)

其他的一些设置

强制横屏或者竖屏设置(X5内核的浏览器才支持)

可以设置为protrait(竖屏)和andscape(横屏)

<meta name="x5-orientation" content="portrait" />

设置全屏(X5内核有效)

<meta name="x5-fullscreen" content="true" /> 

UC浏览器强制竖屏或者横屏显示

可以设置为protrait(竖屏)和andscape(横屏)

<meta name="screen-orientation" content="portrait">

UC全屏显示

<meta name="full-screen" content="yes">

其他浏览器下如果要屏蔽横屏显示的功能,可以使用陀螺仪的方法来做,具体查看:移动端页面的陀螺仪操作这篇文章

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

禁止移动端电话号码和邮箱的识别

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

上面的设置是全局设置,如果说页面中有 一个地方需要识别电话号码和邮箱那么可以使用下面这样设置

<a href="tel:18888888888">请拨打电话18888888888</a>
<a href="mailto:[email protected]">请发送邮件</a>

移动端页面开发常见的一些问题(开发之前需要先重置以下样式)

清除input,a,button等标签的点击阴影

在移动端input,a,button这三个标签点击的时候都会默认有阴影,那么怎么去掉或者替换其他的阴影样式呢,可以使用下面这个属性进行设置(下面是去除阴影)

-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
<style>
    a,
    input,
    button{
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    }
</style>
<body>
    <a href="http://miaov.com">妙味课堂-我是莫涛</a>
    <input type="button" value="按钮">
</body>

清除按钮的圆角

在移动端input和button这两个标签都会默认有圆角,可以使用下面两个样式去除

input,
button {
    -webkit-appearance: none;
    border-radius: 0;
}
<style>
    a,
    input,
    button{
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    }
    input,
    button {
        -webkit-appearance: none;
        border-radius: 0;
    }
</style>
<body>
    <a href="http://miaov.com">妙味课堂-我是莫涛</a>
    <input type="button" value="按钮">
</body>

选中文字设置(设置为不选中)

安卓不兼容这个属性,可以使用事件来兼容

-webkit-user-select: none;

禁止文字缩放

-webkit-text-size-adjust: 100%;

默认字体设置

因为移动端,每个手机默认的字体都不一样,所以需要重置一下,至于重置什么样的字体自己来定

font-family: Helvetica;

Font Boosting

在一段文字我们没有给他设置高度的时候,在webkit内核下,文字的大小被浏览器放大了,解决办法:设置高度或者设置最大高度max-hieght

固定定位在移动端的问题

移动端IOS回弹的问题

IOS下overflow的问题

就是是说body下某个元素超过页面宽度后,即使body设置了overflow为hideen,在IOS下也没有用,解决办法就是将body下的所有子元素包裹在一个div上

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,user-scalable=no">
    <title>Document</title>
    <style type="text/css">
        html {
            height: 100%;
            overflow: hidden;
        }
        body {
            height: 100%;
            margin: 0;
            overflow: hidden;
            position: relative;
        }
        .wrap {
            height: 100%;
            overflow: auto;
        }
        header {
            position: absolute;
            width: 200%;
            height: 40px;
            background: rgba(0, 0, 0, .5);
            color: #fff;
            text-align: center;
        }
        section {
            padding-top: 40px;
        }
    </style>
</head>
<body>
    <div class="wrap">
        <header>我是一个头部</header>
        <section>
            页面内容<br/>
        </section>
    </div>
</body>
</html>
时间: 2024-08-07 17:01:57

移动端页面开发的一些常用的设置的相关文章

移动端页面开发

移动端页面开发 移动客户端的开发类型(站在前端立场上来说),主要是三种:Native App(原生APP),也就是完全使用移动设备系统语言写的客户端,iPhone iPad就是纯Object-C,安卓就是纯JAVA, 是性能最棒的开发方式,但灵活性不好.Web App, 就是在移动浏览器里打开的,纯HTML+CSS+JS,说白了就是个网页,只不过非常的富应用,比如手机浏览器访问的GMAIL.就是在浏览器里打开的页面.IOS支持可以在桌面创建访问的快捷方式,但是说到底还是打开Safari跑.而且对

移动端页面开发及传统PC端网页开发的异同

   2017年12月份在公司做过一次技术分享,转眼间过去六个月了.... 今天在感叹完时间的飞逝之后,拿过来在这里分享一下吧,话题是:移动端页面开发及传统PC端网页开发的异同,这个ppt是搜集网上众路资源(包括视频课程)加上自己的理解总结的.如若有误,欢迎指正哦- 原文地址:https://www.cnblogs.com/catherLee/p/9118406.html

PC端页面开发基础-问题总结(一)

本人在做前端开发相关工作时,遇到过也解决过很多技术性问题.今天起,就从PC端页面开发开始,理一理新手们可能会遇到的那些坑. 本文非教学文章,仅供有前端开发基础的同学同僚们一起讨论与总结,本人将从零开始持续更新,欢迎大家的批评指正. 高度塌陷问题: 父元素的高度会被子元素撑开,当子元素都设置了浮动时,由于子元素半脱离文档流,父元素失去子元素的高度,便会产生高度塌陷 hack1:父元素overflow:hidden; hack2:子元素下方加一个空div,并设置height:0;clear:both

移动端页面开发流程

移动端页面布局 一.移动端app分类 1.Native App原生app手机应用程序 使用原生的语言开发的手机应用,Android系统用的是java,ios系统用的是object-C 2.Hybrid App 混合型app手机应用程序 混合使用原生的程序和html5页面开发的手机应用 3.Web App 基于Web的app手机应用程序 完全使用html5页面加前端js框架开发的手机应用 二.Viewport视口 视口是移动设备上用来显示网页的区域,一般会比移动设备可视区域大,宽度可能是980px

移动端页面开发总结[摘录]

1.浏览窗口宽带等于设备宽度 <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> 2.禁止数字识别为电话号码 <meta name="format-detection" content="telephone=no"

浅谈前端移动端页面开发(布局篇)

前言的一些碎碎念:最近一直在写移动端的页面,不过一直是用的别人造好的轮子,很多时候并没有想那是为什么,那是怎么样要那么写,就跟着别人的文档去了.本以为自己对移动端的那一丢丢理解,结果很多东西都特么有问题,所以,今天停下了手中的一些东西,来谈下移动端的布局方案吧 内容有些长,这也是我第一次写博客,不足之处还请严厉指出 一. viewport 什么是viewport 简单来讲,viewport就是浏览器上,用来显示网页的那一部分区域了,也就是说,浏览器的实际宽度,是和我们手机的宽度不一样的,无论你的

移动端页面开发的前提

区别于pc端开发,移动端开发需要在head中加入下面这行代码 <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"> //name="viewport"表示: 让viewport的宽度等于物理设备上的真实分辨率 //width=device-wid

移动端页面开发问题总结

时间过的飞快,转眼间做移动端已经将近两个月时间了,在这两个月中做了很多个页面,有js,jq,还有页面适配等相关内容,虽然一切看上去都很正常,可是总感觉适配性不是特别好,这就导致在后续要做很多补救工作,甚至有的时候要靠牺牲页面性能(直接用图片)或细微调整设计稿来实现,长路漫漫啊~接下来就将工作中遇到的一些问题总结下来,以及对类似腾讯,京东,淘宝的页面进行简要分析. 1.自适应 在手机端页头我们一般要加两行代码: <meta name="viewport" content="

总结移动端页面开发时需要注意的一些问题

1.防止手机中网页放大和缩小,这点是最基本的,最为手机网站开发者来说应该都知道的,就是设置meta中的viewport 有些手机网站我们看到如下声明: <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd"> 设置了DTD的方式是XHTML的写法,假如我们页面运用的是html5,可以不用设置