移动端开发——前端开发入门

一、viewport的概念

通俗的讲,移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域,在具体一点,就是浏览器上(也可能是一个app中的webview)用来显示网页的那部分区域,但viewport又不局限于浏览器可视区域的大小,它可能比浏览器的可视区域要大,也可能比浏览器的可视区域要小。移动设备上的viewport分为layout viewport 、 visual viewport 和 ideal viewport 三类,其中的 ideal viewport 是最适合移动设备的viewport,ideal viewport的宽度等于移动设备的屏幕宽度,只要在css中把某一元素的宽度设为ideal viewport的宽度(单位用px),那么这个元素的宽度就是设备屏幕的宽度了,也就是宽度为100%的效果。ideal viewport 的意义在于,无论在何种分辨率的屏幕下,那些针对ideal viewport 而设计的网站,不需要用户手动缩放,也不需要出现横向滚动条,都可以完美的呈现给用户。移动设备默认的viewport是layout viewport,也就是那个比屏幕要宽的viewport,但在进行移动设备网站的开发时,我们需要的是ideal viewport。那么怎么才能得到ideal viewport呢?这就该轮到meta标签出场了。

实例:

<meta name="viewport" content=“width=device-width, initial-scale = 1, user-scalable = no”>width=device-width:表示宽度等于此移动设备的宽度,避免出现滚动条,交互不友好。initial-scale = 1:页面初始缩放比例(不缩放)user-scalable = no:是否允许用户进行缩放,值为"no"或"yes", no 代表不允许,yes代表允许

meta viewport 有6个属性(暂且把content中的那些东西称为一个个属性和值),如下:


width 设置layout viewport  的宽度,为一个正整数,或字符串"width-device",设备的宽度
initial-scale 设置页面的初始缩放值,为一个数字,可以带小数
minimum-scale 允许用户的最小缩放值,为一个数字,可以带小数
maximum-scale 允许用户的最大缩放值,为一个数字,可以带小数
height 设置layout viewport  的高度,这个属性对我们并不重要,很少使用
user-scalable 是否允许用户进行缩放,值为"no"或"yes", no 代表不允许,yes代表允许
二:弹性布局

Flex是Flexible Box的缩写,用来为盒装模型提供最大的灵活性。任何一个容器都可以指定为Flex布局。

采用Flex布局的元素,称为Flex容器(flex container),简称“容器”。它的所有子元素自动成为容器元素,称为Flex项目(flex item),简称“项目”。Flex布局的特性有以下几点:
1、块级布局侧重垂直方向、行内布局侧重水平方向,Flex布局是与方向无关的。2、Flex布局可以实现空间自动分配、自动对齐(flexible:弹性、灵活)。3、Flex适用于简单的线性布局

可以看出默认存在两根轴:主轴(main axis)和交叉轴(cross axis)。

定义在容器上(flex container)有6个可以设置的属性(其实只要记住4个就够了。flex为缩写,align-content用得较少):

1.flex-direction 方向(flex-direction属性决定主轴的方向(即项目的排列方向))

row(默认值):主轴为水平方向,起点在左端

row-reverse:主轴在水平方向,起点在右端

column:主轴为垂直方向,起点在上沿。

column-reverse:主轴为垂直方向,起点在下沿

2.flex-wrap 换行(默认情况下,项目都排在一条线(又称“轴线”)上,空间不够会一直挤在这一行。flex-wrap属性定义,如果一条轴线排不下是如何换行的。)

no-wrap(默认值):不换行

wrap:换行,第一行在上方。

wrap-reverse:换行,第一行在下方。

3.flex-flow 上面两个的简写

flex-flow属性是flex-direction属性和flex-wrap属性的简写形式,默认值为row nowrap。(从左侧开始排列,不换行)

4.justify-content 主轴方向对齐方式(属性定义了项目在主轴上的对齐方式)

flex-start:(默认值)左对齐

flex-end:右对齐

center:居中

space-between:两端对齐,项目之间的间隔都相等

space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目边框的间隔大一倍。

5.align-items 侧轴对齐方式(属性定义项目在交叉轴上如何对齐)

flex-start:交叉轴的起点对齐

flex-end:交叉轴的终点对齐。

center:交叉轴的中点对齐。

baseline: 项目的第一行文字的基线对齐。

stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。
多行/列内容对齐方式(用得较少)

6.align-content 多行/列内容对齐方式(lign-content属性定义了多根轴线的对齐方式。如果项目中只有一根轴线,该属性不起作用。控制行与行之间的空隙。)

flex-start:与交叉轴的起点对齐

flex-end:与交叉轴的终点对齐。

center:与交叉轴的中点对齐。

space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。

space-around:每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。

stretch(默认值):轴线占满整个交叉轴。

 


原文地址:https://www.cnblogs.com/1322957664qqcom/p/10752483.html

时间: 2024-08-30 00:02:02

移动端开发——前端开发入门的相关文章

移动端WEB前端开发最佳实践

移动端WEB前端开发最佳实践 Safari,Android Browser,Chrome都是以WebKit为核心的 移动设备和PC之间的页面现实存在差异(Safari中定义了viewport) 在移动设备和桌面端WEB前端开发中,事件绑定存在差异(移动触点) 页面控件设计存差异(点触不灵敏,虚拟键盘弹出框) 移动设备的网络带宽普遍比PC慢,移动页面要设置更简洁 PC页面兼容移动设备 使用流式布局 借助CSS Media queries(媒体查询)技术 使用合适的图片显示兼容方案 保持页面简洁,不

移动端前端开发调试

转自:http://yujiangshui.com/multidevice-frontend-debug/ 通过移动端使用 Web 服务的比率越来越大,例如淘宝今年双十一,移动端交易份额就达到 42.6%.由此可见,掌握移动端的前端开发和测试是非常有必要的. 由于之前做过大量有响应式需求的项目:今年(2014)年初也配合 Denis 的 微信机器人 做了一些用于微信的移动端项目:在淘宝 UED 实习的时候,也有参与过一个针对移动端的游戏的部分开发.所以算是积累了一点移动端调试的经验,在这里分享一

转载 移动端前端开发调试

以下内容转载自:http://yujiangshui.com/multidevice-frontend-debug/ 本文更新说明:第一版是在 2014-06-16 编写的,现在来看,内容不够分明,思路不够清晰,方法不够完全.故再次更新.补充.修改,力求可以作为移动端前端开发测试的基本参考文档.后续还会随着技术的进步不断调整和修改. ———————————————————— 通过移动端使用 Web 服务的比率越来越大,例如淘宝今年双十一,移动端交易份额就达到 42.6%.由此可见,掌握移动端的前

浅谈web前端开发

有部分同学和朋友问到过我相关问题.利用周末我就浅浅地谈谈我对web前端开发的理解和体会,仅仅能浅浅谈谈,高手请自己主动跳过本篇文章. 毕竟我如今经验并非非常足,连project师都算不上,更不用说大牛了.今天也不谈技术.技术非常多人比我掌握得更好,也大同小异.可是每一个人的理解体会是不一样的. 对前端开发的三个整体理解和体会 我对前端开发的整体体会有三: 第一:杂而难,难度甚至超过了一般的后台开发,假设有人认为前端开发简单仅仅能说明他还没有入门. 第二:web前端开发正在向响应式和移动端方向大步

前端开发 - HTML - 简介

[TOC] 一.web1.0时代的网页制作 静态网页,所谓的静态网页就是没有与用户进行交互而仅仅供读者浏览的网页,我们当时称为"牛皮癣"网页.例如一篇QQ日志.一篇博文等展示性文章. 网页三剑客 Dreamweaver+Fireworks+Flash"吧,这个组合就是web1.0时代的产物. 二.web2.0时代的前端开发 前端开发"是从"网页制作"演变而来的. 从2005年开始,互联网进入web 2.0时代,由单一的文字和图片组成的静态网页已经

移动端开发者眼中的前端开发流程变迁与前后端分离

写在最开始 移动端与前端的区别 前端开发的混沌时代 后端 MVC MVC 方案实现 MVC 的缺点与改进 前端只写 Demo HTML 模板 后端 MVC 架构总结 AJAX 与前端 MVC 前后端分离的缺点 双端 MVC 不统一 SEO 性能不够 集中 Or 分离 Nodejs 前后端分离的哲学 Nodejs 分层 实战应用 风险控制 总结 参考资料 写在最开始 这是一篇面向移动端开发者的科普性文章,从前端开发的最初流程开始,结合示范代码,讨论开发流程的演变过程,希望能覆盖一部分前端开发技术栈

移动端前端开发真机调试攻略

移动端前端开发真机调试攻略 一.IOS 移动端 (Safari开发者工具) 手机端:设置 → Safari → 高级 → Web 检查器 → 开. mac端:Safari → 偏好设置 → 高级 → 在菜单栏中显示“开发”菜单. 在 OS X 中启动 Safari 之后,以 USB 电缆正常接入 iOS 设备,并在此移动设备上启动 Safari.此时点击计算机上的 Safari 菜单中的“开发”,可以看到有 iOS 设备的名称显示,其子菜单项即为移动设备上 Safari 的所有标签页,点击任意一

前端开发工程师从入门到精通学习过程及资源总结(持续更新中)

职位名称:前端开发工程师 学习概要:1.先了解基础,html/css/JavaScript是基础.html/css就是做静态页面的,javascript是做动态的. 2.学习框架:jQuery(基于DOM的,必学),Vue(基于数据的,目前比较流行的框架) 一.编辑工具 用sublime text3,下一个安装就行了.如果想用的更加方便,可以百度一下常用的插件,安装几个最常用的就够了. 二.HTML/CSS 1.先看慕课网的基础教程:HTML+CSS基础课程(非常适合零基础入门) 其他教学视频:

【WEB前端开发】新手入门:html语言学习的7个秘诀

WEB前端开发学习过程中,作为一个新手入门级别的菜鸟你,要如何系统的学习呢 ? 本期为介绍其一: html语言学习的7个秘诀 也就是说如何学习HTML语言. 新手们有一个常见的错误就是犹豫于判断哪种编程语言是做好的.最该先学的. 我们有很多的选择,但你不能说那种语言"最好".我们应该理解:说到底,什么语言并不重要. 重要的是理解数据结构.控制逻辑和设计模式. 任何一种语言-甚至一种简单的脚本语言-都会具有所有编程语言都共有的各种特征,也就是说各种语言是贯通的. 我编程使用Pascal,