15158846557 在线咨询 在线咨询
15158846557 在线咨询
所在位置: 首页 > 营销资讯 > 网站运营 > Part 1 · HTML5-04-移动端网页开发

Part 1 · HTML5-04-移动端网页开发

时间:2023-09-27 19:18:01 | 来源:网站运营

时间:2023-09-27 19:18:01 来源:网站运营

Part 1 · HTML5-04-移动端网页开发:

Part 1 · HTML5 网页开发-04

第四章、移动端网页应用开发及项目

第一节、移动端开发基础

1、移动web开发基础

  1. 常见的PC端浏览器(谷歌、360、火狐、搜狗、IE浏览器、百度等)
    注意 :当用H5或CSS3的时候,基本不考虑低版本浏览器的兼容性问题了
  2. 常见的移动端浏览器(UC浏览器、QQ浏览器、百度手机浏览器、搜狗手机浏览器等
    注意 : 国内的UC和QQ、百度等手机浏览器都是根据Webkit修改过来的内核,国内还没有自主研发的内核
    (移动端访问网址,网址前加个m,比如:m.jd.com 、m.taobao.com)
    总结:兼容移动端主流浏览器,处理Webkit内核浏览器就可以了
  3. 常见的移动端屏幕尺寸 , 可以参考 :
移动端调试方法:




2、视口

  1. 布局视口(layput viewport)
  2. 视觉视口(visual viewport)
  3. 理想视口(ideal viewport)对于设备来说,是最理想的视口尺寸,需要手动添加<meta>标签
    <meta>视口标签的主要目的:布局视口宽度应该与理想视口宽度一致,设备有多宽,布局视口就有多宽
<meta>标签

属性解释
width宽度设置的是viewport的宽度,可以设置device-width特殊值
initial-scale初始缩放比,大于0的数字
maximum-scale最大缩放比,大于0的数字
minimum-scale最小缩放比,大于0 的数字
user-scalable用户是否可以缩放(yes或no,0或1)
写法:<meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=0,minimun-scale=1.0,maximun-scale=1.0">标准的viewport参数设置




3、物理像素和物理像素比




4、二倍图




5、移动端开发的选项




6、移动常见的问题解决方案




box-sizing:border-box;-webkit-box-sizing:border-box;特殊样式(需要在初始化页面的时候加进去)

  1. 点击高亮我们需要清除



*{ -webkit-tap-highlight-color: transparent; }
  1. 移动端浏览器默认的外观在IOS上加上这个属性才能给按钮和输入框自定义样式



input{ -webkit-appearance: none; }
  1. 禁用长按页面时的弹出菜单



img,a { -webkit-touch-callout: none; }


7、移动端技术选型

一、单独制作移动端页面(主流)

二、单独制作移动端页面(其次)




第二节、流式布局




1、流式布局原理




2、移动项目初始化准备内容

  1. 首先 添加 normalize.css
  2. 其次 添加 index.css
index.css 里面添加特殊样式部分的内容,不用死记硬背,理解原理,复制粘贴




/*点击高亮我们需要清除清除 设置为transparent 完成透明*/*{ -webkit-tap-highlight-color: transparent; } /*在移动端浏览器默认的外观在iOS上加上这个属性才能给按钮和输入框自定义样式*/ input{ -webkit-appearance: none; } /*禁用长按页面时的弹出菜单*/ img,a { -webkit-touch-callout: none; }新增属性:设置垂直对齐




vertical-align: middle; 设置图片水平居中


7、二倍精灵图做法




9、线形渐变背景

例:




background-image: linear-gradient(0deg,#f1503b,#c82519 50%);


10、滑动轮播图布局

图片格式




第三节、flex布局




1-2、布局体验布局原理

  1. 兼容性好
  2. 布局繁琐
  3. 局限性,不能在移动端很好的布局
  1. 操作方便,布局非常简单,移动端应用广发
  2. PC端浏览器支持情况差
  3. IE11或更低版本,不支持或者只有部分支持
建议

flex布局原理

flex属性值:
display:flex;

例如:




div { display: flex; width: 400px; height: 100px; background-color: pink; justify-content: space-around; 设置主轴方向上子元素的排列方式 } span { width: 100px; height: 50px; background-color: burlywood; margin-right:10px ; flex: 1; 设置flex子项目占的份数 } <div> <span>1</span> <span>2</span> <span>3</span> </div>


3、 flex-direction 属性

属性值解释说明
row主轴默认值从左到右
row-reverse主轴从右到左
column主轴从上到下
column-reverse主轴从下到上

4、 justify-content 属性

属性值解释说明
flex-start默认值,如果主轴是X轴,则从左到右
felx-end从尾部开始排列
center在主轴居中对齐
space-around平分主轴剩余的空间
space-between先两边贴边,剩下的项目,平分主轴中间剩余的部分(重要)

5、 flex-wrap 属性

属性值解释说明
nowrap默认值,不换行
wrap换行

6、 align-items 属性

属性值解释说明
flex-start默认值,从上到下
flex-end从下到上
center挤在一起居中
stretch拉伸

7、 align-content 属性

align-content 用来设置侧轴上子元素的排列方式(多行的时候有效)
注意:只能用于子项出现换行的情况下,单行是没有效果的

属性值解释说明
flex-start在侧轴头部开始排列
flex-end在侧轴尾部开始排列
center在侧轴中间显示
space-around子项在侧轴平分剩余的空间
space-between子项在侧轴两边贴边,剩余子项再平分剩余空间
stretch设置子项元素高度平分父元素高度

8、 flex-flow 复合属性

9-10、flex布局子项常见属性

  1. flex属性
    flex属性定义子项目分配父盒子的剩余空间,用flex来表示占有多少份
    属性值为数字,数字为1时,表示占总份数中的1份,默认值是0
    例:
.item{ flex:2; (表示该子项目占有总份数中的2份)}
  1. align-self属性
    align-self属性定义自己的排列对齐方式,针对个体设置排列方式,层叠前面设置的样式
  2. order属性
    order属性用来设置子项的排列先后顺序,数字越小,越靠前排列,默认值是0
    注意:和z-index不一样,概念不同,不要混淆
    例如:
.item{ order:1; 设置order为1的子项,排列顺序在默认值0的子项的后面}


第四节、less+rem布局




1-2、rem理解

  1. 流式布局和flex布局只能对宽度进行等比例放大缩小,rem不仅能针对宽度,还能针对高度
rem优势 (参考元素是html,一个页面只有一个html元素,所以可以实现整体控制)




3、媒体查询书写语法

@media 可以针对不同的媒体类型和不同的屏幕尺寸定义不同样式

书写规范:

  1. 用@media开头,需要加@符号
  2. mediatype媒体类型,mediatype的值(all用于所以设备、print用于打印机、screen用于电脑屏幕、平板电脑、智能手机等)
  3. 关键字:and、not、only、or
  4. media feature 媒体特性,必须有小括号包含,media feature 媒体类型的值,暂时了解三个(width、min-width、max-width)
例如:




@media mediatype and | not | only (media feature) {CSS-code}在屏幕设备中,当屏幕大于或者等于800px的时候,背景色为粉色




@media screen an (min-width:80px) { bady{ background-color:pink; }}


4、媒体查询案例-背景变色

案例思路: 按照从小到大或者从大到小的思路

注意:为了防止混乱,习惯性按照从小到大来写,这样代码也更简洁




5、媒体查询+rem实现元素动态大小变化

定义html内元素的根大小,用媒体查询,定义宽度来缩放rem单位的元素值




6、媒体查询引入资源的方法

当设置的样式比较繁多的时候,可以直接在link里面判断媒体类型和媒体特性,然后引入CSS文件
例如:




<link rel="stylesheet" media="screen and (min-width:400px)" href="index.css">


7-8、CSS的弊端和解决方法

为了解决这个问题,引入了less(Leaner Style Sheets)语言

  1. less是一门css的扩展语言,也是css的预处理器
  2. 在css的语法基础上,引入了变量,运算以及函数等功能,简化了css的编写,降低css的维护成本
总结:less是一门css的预处理器,扩展了css的动态功能,可以用更少的代码做更多的事情

常见的css预处理器:Sass、Less、Stylus




9-12、less的使用

  1. less变量(变量是指没有固定的值,可以动态改变的
    写法:
    @变量名:赋值;
变量命名规范:

变量使用规范:
直接使用,例:




body{ color:@color;}2. less 编译
方法一:用node.js里面的less,使用cmd命令行,把.less文件转换成.css文件,再引用
方法二:vscode里面的easy less插件,写.less文件,保存后,自动生成.css文件,引用

3. less 编译嵌套
大结构里面嵌套小结构的写法,更清晰更美观
例:




.header{ width:100px; height:100px; .logo{ width:10px; height:10px; }}注意:如果遇见 交集、伪类、伪元素选择器

4. less 运算




13-14、适配原理+适配方案

原理:

rem实际开发适配方案

  1. 按照设计稿与设备宽度比例,动态计算并设置html根标签的font-size大小(媒体查询)
  2. css中,设计稿元素的宽,高,相对位置等取值,按照同比例换算为rem为单位的值



15、苏宁项目




16、用@import导入less文件

  1. 新建index.html
  2. 将其他.less文件引入到index.less里面
    语法:
    例如将common.less文件导入到index.less文件: @import "common"

24、适配方案2:flexble.js

<script src="js/flexible.js"></script>小技巧 :如果不用less计算rem,可以用插件直接转换:
Vscode 将px转换成rem,安装ceerem插件即可




第五节 响应式布局




1、响应式页面兼容移动端




2-3、响应式布局容器

平时响应式尺寸的划分




5、bootstrap

中文官网:


官网:

bootstrap优点:




6、bootstrap使用方法

注意:控制权在框架本身,使用者需要按照框架规定的某种规范使用它的样式库

bootstrap使用使用四部曲:

  1. 创建文件夹结构
  2. 创建html骨架结构
  3. 引入相关样式文件
  4. 书写内容
    书写内容:



7、bootstrap布局容器

bootstrap需要为页面内容和栅格系统包裹一个.container容器,它提供了两个作此用的类

1.container类

2.container-fluid类

例如:

<div class="container">111</div> <div class="container-fluid">222</div>


8、bootstrap栅格系统




9、bootstrap栅格系统使用方法

栅格选项参数
栅格系统用于通过一系列的行(row)和列(column)的组合来创建页面布局,内容直接放进这些创建好的布局中

超小屏幕(手机)<768px小屏设备(平板)>=750px中等屏幕>=992px宽屏设备>=1200px
.container最大宽度自动100%750px970px1170px
类前缀.col-xs-.col-sm-.col-md-.col-lg-
列(column)数12121212
  1. 按照不同的屏幕划分为1-12等份
  1. 列如果总数大于12,多余的列所在的元素将被作为一个整体另起一行排列
  2. 可以同时为一列指定多个设备的类名,以便划分不同的分数,例如class="col-md-4 col-sm-6"



10、列嵌套




<div class="col-4 row"> <p class="col-lg-6"> 1 </p> <p class="col-lg-6"> 2 </p> </div>


11、列偏移

使用.col-md-offset- * 类可以将列向右侧偏移,这些类实际是通过使用*选择器为当前元素增加了左侧的边距(margin)
例如:row里面的右侧元素 向右偏移4个栅格




<div class="row"> <div class="col-lg-4 ">左侧</div> <div class="col-lg-4 col-lg-offset-4">右侧</div></div>


12、列排序

通过这两个类可以改变列(column)的顺序




12、bootstrap响应式工具

为了加快对移动设备友好的页面开发,利用媒体查询功能,并且使用这些工具类可以方便针对不同设备展示或者隐藏页面内容

类名超小屏小屏中屏大屏
.hidden-xs隐藏可见可见可见
.hidden-sm可见隐藏可见可见
.hidden-md可见可见隐藏可见
.hidden-lg可见可见可见隐藏
与之相反的,visible-xs、visible-sm、visible-md、visible-lg 是针对不同设备显示某个内容

bootstrap其他,参考bootstrap文档

关键词:移动

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭