重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一、 HTML5新增的标签
我们提供的服务有:成都做网站、成都网站制作、微信公众号开发、网站优化、网站认证、西秀ssl等。为近1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的西秀网站制作公司
(1)header nav main footer section article hgroup figure figcaption aside
video audio canvas
(2)如何让新标签兼容低版本浏览器: html5shiv.js
二、 HTML5新增的表单控件
一、表单控件的新属性
input type="text" placeholder="" required autofocus pattern="abc"
二、新增的表单控件
(1)input type="email"
(2)input type="url"
(3)数字控件: type="number"
(4) 滑动组件: type="range"
(5) 拾色器: type="color"
(6) 日期控件: type="date"
三、本地存储
1、 三种本地存储 : cookie webStorage(localStorage sessionStorage)
2、localStorage的API
(1)写入: localStorage.setItem(键,值); //值只能是字符串
localStorage.user = "123" localStorage["user"] = "123"
(2)读取 var user = localStorage.getItem("user")
var user = localStorage.user;
(3)删除: localStorage.removeItem("user") localStorage.clear()
(4)修改: localStorage.setItem("user","890")
3、sessionStorage的API
sessionStorage.setItem(键,值);
sessionStorage.getItem(键);
sessionStorage.removeItem(键);
sessionStorage.clear();
**********重点**********
4、cookie webStorage(localStorage sessionStorage)三者的区别
四、离线存储
(1) *.manifest (*.appcache)
index.html html manifest="*.manifest"
(2) 理解离线存储的更新方式
五、移动端的布局思路:
1、设备像素比(倍率) 逻辑像素尺寸 (360px 320px 375px 414px)
window.devicePixelRatio
2、 meta name="viewport" content="width=device-width,maximum-
scale=1.0,minimum-scale=1.0,initial-scale=1.0,user-scalable=no""
3、使用rem单位
六、地理定位
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(success,error,{
timeout: 5000
});
function success(pos){
纬度: pos.coords.latitute
经度: pos.coords.longtitude
}
}
navigator.geolocation.watchPosition(success);
七、地理定位和百度地图API的结合
八、视频,音频 video autoplay="autoplay" controls="controls" loop="loop" poster=""
preload="preload" audio
九、移动端事件:
(1) ontouchstart ontouchmove ontouchend
(2) 如何判断是否为移动端: if ("ontouchstart" in document){}
(3) 移动端事件的事件对象及常用属性
e.touches[0].clientX e.touches[0].clientY e.touches[0].target
(4) 移动端常见问题及解决方案:
a、 click事件 300ms的延迟: 1zepto的tap事件 (2) fastclick.js
b、 zepto的tap事件有点透问题 : (1) fastclick.js
(5) zepto的touch模块: tap singleTap doubleTap longTap
swipeLeft swipeRight swipeUp swipeDown
十、swiper.js的使用 (参考官网)
十一、 canvas
(1) canvas width="600" id="can"/canvas 300*150
(2) var can = document.getElementById("can");
var cxt = can.getContext("2d");
cxt.beginPath();
cxt.moveTo(100,200);
cxt.lineTo(200,400);
cxt.strokeStyle = '#f00';
cxt.stroke();
cxt.clearRect(0,0,200,300);
context.globalCompositeOperation="destination-out"; (了解)
如何使用Node-Webkit开发HTML5本地桌面应用
这非常简单,像传统的开发你的HTML5应用一样开发它们,完成之后用Node-Webkit打包它。打包的方法是
先下载Node-Webkit
然后创建一个包文件命名为package.json,
写入下面的代码:
{
"name":
"nw-demo",
"main":
"index.html"
}
这里的“name”是你应用的名称,“main”是你的应用的启动文件,也就是应用启动是第一加载的文件。
将你的HTML5应用文件和package.json一起打包成zip
重命名zip文件,将其后缀变成
.nw
,比如app.nw
现在你就可以用node-webkit
runtime来运行你的app了在Linux上的运行命令是
./nw
app.nw
在Windows平台上你可以直接把你的app.nw拖拽到
nw.exe
程序上就行了。
想让你的应用更容易传播和发布,可以将它和node-webkit封装到一起,也就是将你的HTML5应用
app.nw
和
nw.exe
合成一个可执行文件。在Linux上的做法是
cat
/usr/bin/nw
app.nw
app
chmod
+x
app
在Window上的做法是
copy
/b
nw.exe+app.nw
app.exe
一、HTML的开发工具和使用的浏览器
开发工具:记事本等文本编辑器,Atom、VisualStudioCode( VSCode)、Brackets、Sublime text和Hbuider。
浏览器:Chrome、Firefox、IE、Safari、IPhone、Android。
二、HTML的基本要素
DOCTYPE 描述文档的类型
html 网页的根元素,写在网页的在外面
head 网页的头部信息,写在html标记的里面
body 网页的内容,写在html标记的里面
具体描述:
1、DOCTYPE 描述文档的类型,规定web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。
网页可以使用的具体版本,网页中可以使用那些标记,每个版本的DTD版本均有不同
使用例子
HTML4的例子
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""
HTML5的例子
2、html/html 网页文档中的根标记
html 标签有三个特殊的属性
manifest 指定网页缓存文件,可以让用户离线的时候也可以访问文件。
xmlns 设置html名空间,比如把网页设置成xhml的时候可以使用这个值。
lang 设置网页的描述语言,比如中文是zh;英文是en。
3、head/head头部标签在网页中只能有一个,设置HTML文档的头部信息,里面内容不会在页面中显示出来·。
head里面的标记
meta 标记
title定义网页的标题
link 链接
script 标记JavaScript脚本的内容
style 标记css样式
meta 标记
4、body/body只能有一个,显示网页的主体内容。
代码示例:
请点击输入图片描述
1 !DOCTYPE html 2 html lang="en" 3 head 4 meta charset="UTF-8" 5 title网页标题(显示在浏览器上)/title 6 meta name="description" content="网页内容的简单描述" 7 meta name="keywords" content="网页关键词" 8 link rel="/css/style.css" 9 script src="/js/script.js"/script10 /head11 body12 header网页头部内容/header13 main网页主要内容/main14 nav网页的导航内容/nav15 footer网页的页脚内容/footer16 /body17 /html
请点击输入图片描述
请点击输入图片描述
三、写在head中的标签
(一)、meta标签
meta元素的属性:
name 描述信息的名称,来标记这是一个什么样的信息
http-equiv 描述行为
content 描述的内容
charset 指定网页的编码
1、name 属性
1 meta name="author" content="nyw"2 !--作者, 定义网页的作者 --3 meta name="description" content="meta标记学习"4 !-- 描述,描述网页的实际内容 --5 meta name="keywords" content="HTML,meta"6 !-- 关键字,定义网页关键字 --
2、http-equiv属性
1 meta http-equiv="refresh" content="30"2 !-- 网页30s后自动刷新 --3 meta http-equiv="refresh" content="5,url=dom.html"4 !-- 网页30秒后跳转到dom.html文档 --
meta http-equiv="refresh" content="5,url=dom.html"
http-equiv描述网页的行为,行为 refresh刷新,内容为5,表示5秒后跳转到 dom.html这个文档。
3、content 属性
特殊属性
content-type 指定http头部信息的文字编码(最为常用)
default-style 指定优先使用的样式单(stylesheet)
refresh 用于网页的自动刷新或是页面跳转
set-cookie 设置页面的cookie(现在已经不再推荐使用)
4、charset属性
指定网页的编码,推荐使用UTF-8来增加网页的兼容性。
代码实例:
为搜索引擎抓取机器人准备一些信息
这段代码可以禁止搜索引擎缓存和跟踪网页。
meta name="robots" content="noindex,nofollow"
!-- name定义的是机器人,内容部分表示不要被搜索引擎缓存,也不要被搜索引擎跟踪 --
代码实例:
请点击输入图片描述
1 !DOCTYPE html 2 html lang="en" 3 head 4 meta charset="UTF-8" 5 title网页标题(显示在浏览器上)/title 6 meta name="author" content="nyw" 7 !--作者, 定义网页的作者 -- 8 meta name="description" content="meta标记学习" 9 !-- 描述,描述网页的实际内容 --10 meta name="keywords" content="HTML,meta"11 !-- 关键字,定义网页关键字 --12 meta http-equiv="refresh" content="30"13 !-- 网页30s后自动刷新 --14 meta http-equiv="refresh" content="5,url=dom.html"15 !-- 网页30秒后跳转到dom.html文档 --16 meta name="robots" content="noindex,nofollow"17 !-- name定义的是机器人,内容部分表示不要被搜索引擎缓存,也不要被搜索引擎跟踪 --18 /head19 body20 /body21 /html
请点击输入图片描述
(二)、title、base标记
title和base标记都是写在head标签中
title:设置网页的标题
写法:title内容/title。
base:指定网页跳转基准URL,如果不指定的话默认为当前网站的当前路径。
写法:base href=""
base属性值:
href 指定网页跳转到基准URL,如果不指定的话则默认为当前网站的当前路径。
base href="" 这是将页面跳转到百度的网站打开。
target 指定链接的跳转帧如果不指定的话,则是在当前页面中跳转。
base target="_blank" 网页中的链接都应该在新的窗口中打开。
terget属性值:
_blank 在新窗口中打开被链接的文档
_self 默认值,在相同框架中打开被链接的文档
_parent 在父框架集中
_top 在整个窗口中打开被链接文档·
framename 在指定框架中打开被链接文档
(三)、link标记
link标记:链接外部文件时使用的标记,可以把外部文件的内容引入到当前文件中来,使当前网页实现更多的功能。
link属性:
href:指定链接外部路径的路径和文件名,要设置全路径并且带文件名
rel:引用文件,引用资源的类型定义
我们在使用link标签引用外部文件的时候,外部文件的类型是多种多样的。
alternate 代替文档(种子,其他语言版本,其他格式等等)
author 网页的作者
help 帮助文件的链接
icon 网页的图标
next 如果是连续网页的时候,指定下一个网页
prefetch 把链接外部资源时提前缓存起来。
prev 如果是连续网页
media 链接文件或是资源属于哪一种资源。
hreflang 链接文件的语言种类
type 链接文件的mi/me类型(比如说,图片图标文本)
sizes 根据link链接文件的类型,来指定文件的大小
代码示例:
链接网页图标:
网站的图标指定,可以显示在浏览器的图标栏,也可以被手机读取作为网站的图标存入收藏夹
1 !-- 网站的图标指定,可以显示在浏览器的图标栏,也可以被手机读取作为网站的图标存入收藏夹 --2 link rel="icon"3 !-- 示例 --4 link rel="icon" href="img/favicon.png" type="image/png"5 link rel="shortcut icon" href="img/favicon.ico" type="image/x-icon"6 link rel="apple-touch-icon" href="img/apple-touch-icon.png" type="image/png"
注意:后面的href和前面type标注的类型要一致,这样既可以显示在浏览器,又可以显示在手机上
链接外部样式单
1 link rel="stylesheet"2 link rel="stylesheet" href="style1.css" media="screen"3 link rel="stylesheet" href="style2.css" title="主题样式文件"4 link rel=" alternate stylesheet" href="style3.css" title="可选样式单"
说明:
alternate 会在浏览器中会弹出一个对话框,供用户可以进行选择
media 表示媒体类型为屏幕,可以是手机,但不包括打印机和投影仪
title 对这个link进行简单的说明
网站RSS种子指定
!-- 网站RSS种子指定 --
link rel="alternate" type="application/rss+xml"
为搜索引擎的准备的网页的URL
!-- 为搜索引擎的准备的网页的URL --
link rel="canonical"
link rel="canonical" href=""
html5的使用,与第四代的html有点出入,如:第四代的HTML布局用的是div来布局,而第五代的HTML布局已经明确了 头部、侧边、栏目、中间区域(主体部分)、以及底部(footer);
如:以前定义一个栏目导航divulliliul/div差不多是这形式来定义的,而html5则明确规定了nav/nav标签来定义,头部用header/header底部用footer/footer这里需要记住的一点是:主体部分,也就是中间区域main/main一个网页只能有一个主体部分;
这一点需要你好好记住,还有如果不懂的话,你可以去网上查看一些视频教程,有详细的解说,如果还有疑问请继续追问我;
早在 2013 年, main 元素就被正式添加到 W3C HTML 规范中,到目前为止,关于该元素的定义已经很完善了,所以现在是时候深入了解什么时候适合使用 main 元素了。那么,下面就开始吧。
main 的主要目的是将 ARIA 的地标性作用 main 映射到 HTML 中的元素。这可以帮助那些屏幕阅读设备和辅助设备知道页面的主要内容是从哪里开始的。 W3C 规范将 main 描述为 :
自从 main 元素包含在 HTML 规定里之后, body 元素就还原成了它在 HTML4 中的定义。
使用 main 元素值得注意的一点是,它在每个页面中只能使用一次。为什么要规定一个页面只能使用一次呢?虽然我对具体的细节并不感兴趣,但是有些观点看起来还是比较有意义的。
按照规格,如果你在一个文档中试图使用多个 main 标签,那么 W3C validator 会抛出错误。
main 元素的另外一个规定是,它不能作为 article , header , aside , footer , nav 的子元素节点。
就像其它的 HTML5 新元素一样,并不是所有的浏览器都能够识别出 main ,并且给它加上预设的样式,你可能需要在自己的 CSS 文件中将它设置为块级元素。
有的时候,为了支持一些较低版本的 IE 浏览器,你可能还需要使用 JavaScript 创建该元素。
当然了,你还可以使用 html5shiv .
使用 main 元素最简单的方式就是去替换那些 ID 或者 Class 值为 main 或者 content 之类的 div 元素。
所以,在实践中它应该是什么样子呢?下面是使用 main 元素之前的文档结构。
下面使用 main 元素改写文档。
好了,这是如此的简单,以至于一分钟不到我们就可以将文档改写成新潮的 HTML5 样式。
正如你所见的,使用 main 元素是超级简单的,只需要花费几分钟的时间,所以现在真的到了将 main 带入到网站开发的过程中了。