HTML5 -01- H5表单新增特性

本文深入探讨HTML5的语义标签、表单增强、多媒体应用及API使用,讲解如何利用新特性提升网页交互性和用户体验。

H5主要做什么?主要用来做效果CSS3,做结构H5标签,应用api-定位等js。

 

1.1什么是HTML5

<!--html:5 +tab-->
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
</body>
</html>

1.2HTML5-html5中的语义标签

<header>头部</header>
<nav>导航</nav>
<main>
    <article>float作用于块级元素</article>
    <aside>右边</aside>
</main>
<footer>底部</footer>

1.3HTML5-html5中的语义标签的兼容性

第一种方式:手动创建标签
第二种方式:引入第三方插件 

将行级元素转换为块级元素

    main{
           
         /*将行级元素转换为块级元素*/
            display: block;
            width: 100%;
            height: 500px;
            background-color: #ccc;
        }

1.4HTML5-表单的新增type属性

<input type="email">
<input type="tel">
  • a)email: 输入email格式 -校验格式
  • b)tel: 手机号码 -在移动端打开数字键盘
  • c)url: 只能输入url格式 
  • d)number: 只能输入数字 -(value="60" max="100" min="0")
  • e)search: 搜索框 -X删除
  • f)range: 范围,可以进行拖动,通过value进行取值 -(value="50" max="100" min="0")
  • g)color :拾色器,通过value进行取值
  • h)time :时间
  • i)date: 日期 不是绝对的
  • j)datetime: 时间日期 
  • k)month: 月份
  • l)week: 星期

                                                   

1.5HTML5-表单中新增的其它属性

  • placeholder:提示文本,提示占位
  • autofocus:自动获取焦点
  • autocomplete:自动完成:on:打开 off:关闭 1.必须成功提交过:提交过才会记录 2.当前添加autocomplete的元素必须有name属性
<input type="text" name="userName" placeholder="请输入用户名" autofocus autocomplete="on"> 
  • required:必须输入,如果没有输入则会阻止当前数据提交
  • pattern:正则表达式验证*:代表任意个 ?:代表0个或1个 +:代表1个或多个
<input type="tel" name="userPhone" required pattern="^(\+86)?1\d{10}$"> 
  • multiple:可以选择多个文件
文件:<input type="file" name="photo" multiple> <br>
邮箱:<input type="email" name="email" multiple><br>
  • form:指定表单id,那么在将来指定id号的表单进行数据提交的时候,也会将当前表单元素的数据一起提交
地址:<input type="text" name="address" form="myForm">

1.6HTML5-新增的表单元素--输入+选择框

   网址:<input type="url" list="urls">
    <datalist id="urls">
        <!--如果input输入框的type类型是url,那么value值必须添加http://-->
        <option value="http://www.baidu.com" label="百度"></option>
        <option value="http://www.sohu.com"></option>
        <option value="http://www.163.com"></option>
    </datalist>

1.7HTML5-新增的表单元素

<body>
<form action="">
    用户名:<input type="text" name="userName"><br>
    密码:<input type="password" name="userPwd"> <br>
    加密:<keygen></keygen><br>
    <input type="submit">
</form>

<!--显示输出信息:只能显示不能修改
1.语义性更强
2.值需要你去设置,不能自动计算-->
<output>总金额:¥100.00</output>
</body>

1.8HTML5-表单的新增事件

  • 1.oninput:监听当前指定元素内容的改变:只要内容改变(添加内容,删除内容),就会触发这个事件
  • 2.onkeyup:键盘弹起的时候触发:每一个键的弹起都会触发一次
  • 3.oninvalid:当验证不通过时触发

1.9HTML5-进度条

 第一种 max:最大值 value:当前进度值
<progress max="100" value="100"></progress>
第二种 度量器  high:规定的较高的值 low:规定的较低的值 max:最大值 min:最小值 value:当前度量值
<meter max="100" min="0" high="80" low="40" value="30"></meter>

1.10HTML5-表单案例总结 

                                      

1.11HTML5-多媒体标签

<!--video:视频-->
<!--audio:音频-->

1.12HTML5-dom操作

1.13HTML5-类样式操作

1.14HTML5-自定义属性

<think>嗯,用户让我介绍一下HTML5新增特性。首先,我需要回忆一下HTML5的主要更新内容,确保信息准确。HTML5是在2014年正式发布的,作为HTML的第五次重大修订,带来了很多新功能和改进。 首先,我应该分几个大类来组织内容,这样结构清晰。常见的分类包括语义化标签、多媒体支持、图形与动画、本地存储、Web性能、表单增强、API支持以及兼容性和标准化。 语义化标签是HTML5的重要部分,比如header、footer、article这些标签,它们帮助搜索引擎和屏幕阅读器更好地理解页面结构。然后是多媒体的支持,比如video和audio标签,之前需要Flash,现在原生支持了。 图形和动画方面,canvas和svg的支持,尤其是canvas可以用来做游戏或者数据可视化。本地存储部分,localStorage和sessionStorage比cookie更好用,存储容量更大,还有IndexedDB适合更复杂的数据。 Web性能优化方面,Web Workers可以在后台运行脚本,避免阻塞主线程。表单增强包括新的输入类型和属性,比如email、date,还有placeholder和autocomplete这些属性,提升用户体验。 API方面,地理位置、拖放API、WebSocket这些都很重要,尤其是WebSocket实现了全双工通信,适合实时应用。兼容性和标准化方面,HTML5统一了文档声明,简化了语法,比如标签可以不闭合,引号可省略,但最好还是保持规范写法。 需要检查是否有遗漏的重要特性,比如Web Storage、WebSocket、语义化标签这些确实是核心内容。还要注意用户可能需要实际应用的例子,比如在代码中使用video标签,或者localStorage的方法。不过用户没有要求代码示例,所以可能不需要深入,但提到相关API时可以简单说明用途。 需要确保每个特性解释清楚,但不过于冗长。比如在表单增强部分,除了新的输入类型,还有表单验证属性如required和pattern,这些对前端开发很有帮助。 最后,确保回答结构清晰,分点列出,每个大类下有子项,帮助用户逐步了解。可能用户是前端开发者,或者刚入门的学习者,需要全面但易懂的介绍。要避免技术术语过于复杂,同时保持专业性。 检查是否有错误,比如Web Workers属于性能优化,正确。离线应用通过缓存manifest文件,不过现在Service Worker更常用,但HTML5中可能还是提到应用缓存。不过有些特性已经被现代API取代,但作为介绍HTML5,还是需要按标准内容来。 总结下来,分八个主要部分,每个部分列出关键特性,用简短的说明,确保覆盖主要新增内容,结构清晰,语言准确。</think>HTML5HTML的第五次重大修订,于2014年正式发布。以下是其核心新增特性的分步解析: --- ### 一、语义化标签 1. **结构化标签** - `<header>` `<footer>`:定义页眉/页脚 - `<nav>`:导航栏 - `<article>`:独立内容块(如博客文章) - `<section>`:文档中的逻辑分区 - `<aside>`:侧边栏或附属内容 2. **媒体内容标签** - `<figure>` `<figcaption>`:标注图片/图表 - `<time>`:定义时间或日期 --- ### 二、多媒体支持 1. **原生音视频** - `<video>` `<audio>`标签直接嵌入媒体 - 支持格式:MP4、WebM、Ogg(视频);MP3、WAV(音频) - 示例: ```html <video controls> <source src="video.mp4" type="video/mp4"> </video> ``` --- ### 三、图形与动画 1. **`<canvas>`绘图** - 通过JavaScript实现动态2D/3D图形 - 常用于数据可视化、游戏开发 2. **SVG支持** - 矢量图形直接嵌入,支持缩放不失真 --- ### 四、本地存储 1. **Web Storage** - `localStorage`:永久存储(需手动清除) - `sessionStorage`:会话级存储(关闭标签页失效) 2. **IndexedDB** - 客户端数据库,支持复杂数据存储 --- ### 五、Web性能优化 1. **Web Workers** - 后台运行JavaScript,避免阻塞主线程 2. **应用缓存** - 通过`manifest`文件实现离线访问 --- ### 六、表单增强 1. **新输入类型** - `email` `url` `date` `color` `range`等 2. **表单验证** - `required`必填字段 - `pattern`正则校验 - `placeholder`输入提示 --- ### 七、API支持 1. **地理位置** - `Geolocation API`获取用户位置 2. **拖放操作** - `Drag and Drop API`实现元素拖放 3. **实时通信** - `WebSocket`全双工通信协议 --- ### 八、兼容性与标准化 1. **统一文档声明** - 简化的`<!DOCTYPE html>` 2. **语法宽松性** - 允许标签不闭合、属性不加引号(但建议规范写法) --- ### 总结 HTML5通过语义化标签、多媒体原生支持、本地存储等特性,显著提升了Web应用的功能和性能,同时推动开发标准化。这些改进为现代Web开发(如响应式设计、跨平台应用)奠定了核心基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

良之才-小良

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值