十一天

导航

HTML5新特性

全文手打,转载请注明出处

全文手打,转载请注明出处

全文手打,转载请注明出处

一)HTML5由W3C和WHAT组织机构共同研发

HTML5新特性:

1、新增audio和video音频播放,抛弃了Flash(需插件)

2、新增canvas画布(绘画,制作动画(小游戏开发等))

3、新增地理定位

4、新增离线缓存

5、硬件加速

6、新增Web Socket(全双工通信(聊天室))

7、新增本地存储

8、新增语义化标签

 

二)网页布局标签

 

//页首
<header>  </header>     

//导航栏,无序列表
<nav>         
  <ul>
    <li></li>
    <li></li>
    <li></li>
  </ul>
</nav>

//侧边栏
<aside>  </aside>      

//主体,核心部分
<main>  </main>        

//区块,每一块单独的样式或布局
<section>  </section>     

//文章
<article>       
  <h1>标题</h1>
</article>

//页尾
<footer>
  <p>页脚</p>
</footer>      

 

三)语义化标签

//mark(行级):定义高亮元素,加黄色背景
<p>时间过得<mark>真快</mark>呀!</p>

//details(描述)、summary(摘要):名词解释或封装区块
<details>
  <summary>大前端开发</summary>   //只展示summary里面的,点击后可以展开
  <h2>大前端开发包括:</h2>
  <ul>
     <li>组件化开发</li>
     <li>模块化开发</li>
     <li>自动化开发</li>
     <li>后台开发</li>
  </ul>
</details>
//meter:定义度量衡,显示一个技术仪表
value:当前值  min  max  low:指定范围的最小值  high:指定范围的最大值
<meter value="100" min="30" max="200">100</meter>公里/小时

 

//progress:定义进度条
<p>任务已完成:</p><progress value="70" min="0" max="100"></progress>70%

 

 

//dialog:定义对话框或窗口     
<dialog open>                //open才打开,而且是居中的状态
  <h2>标题</h2>
  .ul
</dialog>
//figure:对元素进行组合,组合一张图的标题、图片、图片描述等
<figure>
  <h5>花少北</h5>
  <img src="flower.jpg" alt="花少北" />
  <p>花海中的少年一路向北</p>
</figure>

 

四)多媒体

audio:播放音乐或音频,支持 .mp3 .ogg .wav

src:文件路径
autoplay:自动播放   
loop:循环   
controls:控制条
muted:静音
preload:预加载(当使用autoplay时,preplay自动失效)

video:加载视频,支持 .mp4 .ogg .webm

属性同上+++

width: 视频宽度
height: 视频高度
poster: 视频播放前海报

embed:嵌入内容或加载插件

src:文件路径
width:宽度
height:高度
type:类型
//音频播放
// 文件路径 控制条 自动播放 循环2次 静音
<audio src="ok.mp3" controls autoplay loop="2" muted></audio>
//视频播放
//     文件路径      控制条     循环2次   静音   视频宽度     海报
<video src="ok.mp4" controls  loop="2" muted width="400" poster="img.jpg"></video>
//插件播放
//     文件路径        类型
<embed src="run.swf" type="application/x-shockwave-flash">

<embed src="movie.ogg" type="video/ogg" autostart="true" loop hidden="true" starttime="00:05" controls="smallcontrols">

 

五)画布canvas

canvas:容器元素,提供空间用于绘画,必须结合js使用,功能体现通过js体现

canvas的宽和高最好不要通过CSS实现,而是直接使用标签属性width和height实现

<canvas width="400" height="200" style="background-color:yellow;"></canvas>

<script>
  var canvas=document.getElementsByTagName('canvas')[0];   //DOM操作,用来获取canvas标签元素
  var ctx=canvas.getContext('2d');    //绘制2D图  
  ctx.fillStyle="#f00";               //设置填充色
  ctx.fillRect(0,0,200,100);          //坐标左上角(0,0)宽200,高100,矩形
</script>

  

六)HTML5常用属性

contentEditable     true/false     //将标签转换为可编辑状态,可用于所有标签
<p contentEditable="true">可编辑状态</p>

hidden   //对元素进行隐藏,用来传值或当某个条件成立,执行条件显示
<div class="box" hidden>隐藏啦box2</div>

data-*    //自定义属性,用于存储页面或应用程序的私有自定义数据,一般用于传值
<p data-id="0001">内容</p>

multiple     //规定输入域中可选择多个内容,用于表单组件中,如file/select
<select>
  <option value="1">1</option>         //下拉框只可单选
  <option value="2">2</option>         // 按住shift或ctrl可实现多选
  <option value="3">3</option>
  <option value="4">4</option>
</select>

required       //约束表单元素在提交前必须输入值,需结合提交按钮使用
<form action="#">
  <input type="text" placeholder="请输入用户名" required>
  <br>
  <input type="email" placeholder="请输入邮箱">
  <input type="submit">
</form>

pattern       //验证输入字段的模式,用于表单组件中,需结合提交按钮使用
<form action="#">
  <input type="text" placeholder="请输入用户名" pattern="[A-Za-z0-9]{4,6}">  //正则写法,4-6位
  <br>
  <input type="email" placeholder="请输入邮箱">
  <input type="submit">
</form>

 

七)表单组件

color    //颜色选择框
<form action="#">
  <input type="color">
</form>

email    //邮箱
  <input type="email">
  <input type="submit">   //提交会对邮箱进行验证

tel       //电话

url      //网址
  <input type="url">

number   //数字
  <input type="number" step="10" min="-100" max="100">   //数字可以上下翻,每次翻10

range      //范围
  <input type="range" value="90">     //拉动的范围条,默认90

search       //搜索
  <input type="search">    //输入后的搜索框,后面有个×

date        //日期
  <input type="date">
datetime       //日期时间
  <input type="datetime">
datetime-local       //本地日期时间
  <input type="datetime-local">
year       //年份
month     //月份
week       //周
time        //时间

 

八)表单属性

formaction        //修改action数据提交的地方
<form action="//baidu.com">
  <input type="submit" formaction="//163.com">   //表单提交到163.com
</form>

formenctype     //修改表单请求的类型
<form action="#" enctype="application/x-www-form-urlencoded">   //普通表单类型
  <input type="submit" formenctype="multipart/form-data">   //文件上传的类型
</form>

formmethod     //修改数据提交的方法
get和post区别:get以字节为单位提交,只接受ASCII码;post以字符为单位提交
              get以明文提交,提交的数据会显示在地址栏中,不可传敏感数据;post暗文方式提交
get在浏览器中回退是无害的;而post会再次提交请求
get会浏览器主动缓存;而post不会,除非手动设置
get和post在传输字节数上一般没有限制,个别浏览器会有,get一般不超过2K;而post一般不超过2M get用于表单;post一般用于其他
<form action="#" method="get">
<input type="text" name="username"> <input type="submit"> //默认get,会暴露在地址栏中
  <input type="submit" formmethod="post"> //post提交,地址栏中没有表单提交的信息 </form> form //设置表单元素属于哪个表单 novalidate //不验证

 

 

九)input属性

autocomplete:自动完成(用来帮助用户输入,每一次输入的内容,浏览器是否保存输入的值,以备将来使用)
on(默认)/off,为保护敏感数据(用户账户、密码),避免本地浏览器的不安全存储,一般需要关闭
<form action="#">
  <input type="text" name="username" autocomplete="off">  //敏感数据,off关闭
  <input type="submit">
</form>

autofocus:自动获焦
  <input type="text" name="username" autofocus>        //自动获焦,变蓝框

step:步长
multiple:多选
pattern:正则匹配

placeholder:输入提示
<input type="tel" name="telname" placeholder="联系方式:">
联系方式:<input type="tel" name="telname">
<label>联系方式:</label><input type="tel" name="telname">

required:必须输入

 

posted on 2020-09-10 17:04  十一天  阅读(220)  评论(0编辑  收藏  举报