No.3 移动端web响应式开发-学习笔记

1.浏览器内核

浏览器最重要或者说核心的部分是“Rendering Engine”,可大概译为“渲染引擎”,不过我们一般习惯将之称为“浏览器内核”。负责对网页语法的解释(如标准通用标记语言下的一个应用HTMLJavaScript)并渲染(显示)网页。 所以,通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同的内核的浏览器里的渲染(显示)效果也可能不同,这也是网页编写者需要在不同内核的浏览器中测试网页显示效果的原因。

2.视口

2.1 视口的概念

在 Windows的作图函数中,涉及逻辑坐标到设备坐标的转换。这里提到的窗口(window)、视口(viewport)是对应的概念。视口是与设备相关的一个矩形区域,坐标单位是与设备相关的“像素”,大多数情况下,视口与客户区相同。窗口的坐标是逻辑坐标,与设备无关,可能是像素、毫米或者英寸。窗口坐标的原点与视口坐标的原点始终对应于同一点。对于同一个图形,用窗口坐标系统表达的该区域的长和宽与视口的坐标系统表达的长和宽是不同的。二者就定义了这两个坐标系统的比例关系。程序作图时,使用的坐标总是是窗口坐标。而实际的显示或输出设备却各有自己的坐标。

分辨率:屏幕的像素数量。

网页版心是固定的,分辨率越大、像素数量越多、网页占据的真实宽度越小、字就越小。 

<body>
    <h1></h1>
    <script>
        //获取元素
        var nH1 = document.getElementsByTagName('h1')[0];
        //设置元素文本内容
        nH1.innerHTML = document.documentElement.clientWidth;
    </script>
</body>

显示浏览器宽度:document.documentElement.clientWidth

980是视口宽度viewport,是所有设备初始视口宽度。

自定义移动设备视口宽度:

    <!--配置移动端视口-->
    <meta name="viewport" content="width=300px">

设置浏览器宽度之后,浏览器会按照300px的宽度显示页面。

2.2 视网膜屏幕概念

设备像素比:window.devicePixelRatio

        //获取元素
        var nH1 = document.getElementsByTagName('h1')[0];
        var nH1 = document.getElementsByTagName('h1')[1];
        //设置元素文本内容
        nH1.innerHTML = "当前的视口宽度"+document.documentElement.clientWidth;
        nH1.innerHTML = "当前的设备像素比"+window.devicePixelRatio;

content属性值:

width=device-width 约束视口宽度

initial-scale=1.0 初始视口宽度为1倍

minimum- scale=1.0 最小视口宽度为1倍

 <meta name="viewport" content="width=device-width, initial-scale=1.0">

3.百分比布局

各设备视口约束不同,我们希望页面在手机上是没有版心的,所以我们不能设置固定像素,可以设置弹性盒子。

百分比布局/流式布局

各属性参考对象:

width:父盒子width、body(没有父盒子时)

height:父盒子height

padding:父元素width

margin:父元素width

border:不支持设置百分比为单位

绝对定位元素如果设置百分比,此时width、height、padding,分别参考的是距离自己最近的有定位的祖先元素的width、height、width

属性

  • calc()计算属性
  • min-和max-属性
  • flex布局

容器的属性

  • flex- direction属性
  • flex- wrap属性
  • flex- flow属性
  • justify- content属性
  • align- items属性
  • align- content属性

项目的属性

  • order属性
  • flex- grow属性
  • flex- shrink属性
  • flex- basis属性
  • flex属性
  • align- self属性

rem单位

em单位

rem单位

高度的等比例变化

4.属性扩展:

5.rem

携程网项目

事件流

DOM0级事件

DOM2级事件

低版本IE事件

事件轮子

阻止事件传播

阻止默认事件

touch事件参数

拖拽模型

zepto

手机拖动轮播图

swiper插件

手机滚滚屏项目

响应式页面

媒体查询

Bootstrap

栅格系统搭建页面布局项目

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值