html5新特性学习笔记
1.语义化标签兼容问题(语义化标签只支持ie8以上,不包括ie8)
解决方法一:该标签的css中加上display:block;
通过DOM的方式创建这个标签 document.createElement("header");
解决方法二:引入外部的htmlshiv.js文件(插件)<script src="html5shiv.js"></script>
注意:在谷歌中支持语义化标签,不需要请求该文件//cc:ie8 tab键即可
<!--如果浏览器是小于ie8就执行里面的代码,改命令只针对IE浏览器有效-->
<!--[if lte IE 8]>
<script src="html5shiv.js"></script>
<![endif]-->
2.多媒体
1)音频播放
<!--controls可以在页面中显示该音频控件-->
<!--autoplay自动播放,但是谷歌不会自动播放,加入muted谷歌可以自动播放视频-->
<!--loop循环播放-->
<audio src="xxx.mps" controls autoplay loop muted></audio>
2)视频播放
<!--controls可以在页面中显示该视频控件-->
<!--autoplay自动播放,但是谷歌不会自动播放,加入muted谷歌可以自动播放视频但是会是静音状态-->
<video src="xxx.mp4" controls autoplay loop muted></video>
<!--注意:格式兼容-->
<!--如果A浏览器支持第一个,那就直接播放第一个,
如果B浏览器支持第二个,遇到第一个标签的时候不会执行,遇到第二个人可以支持的才会播放-->
例:<video autoplay controls loop>
<source src="xxx.mp4">
<source src="xxx.ogg">
对不起,您的浏览器不支持,请升级!
</video>
3.智能表单元素的相关属性:
1)autocomplete:关闭智能提示
2)novalidate:关闭验证功能
例:<form action='' method='get' autocomplete='off' novalidate>
邮箱:<input type="email" name="em" /><br/>
<input type="submit" value="提交" id="sm" />
</form>
3)autofocus:自动获取焦点
placeholder:可以设置文本框提示信息
required:该属性出现,当前表单的元素必须验证
form:有一个表单元素的标签,不在form中,但是要提交,则在表单标签中加上form属性,值设置为form标签中的id值,该标签就能提交了
datalist:数据列表,该标签需要有自己的id的值,再配合list属性来使用,才可以有数据列表的效果
例:<form action="" method="get" id="fm">
<input type="text" value="" name="txt" autofocus placeholder="请输入名字" required/>
<input type="submit" value="提交" id="sm" />
</form>
<input type="text" value="" name="name" form="fm" />
<input type="text" value="" name="txtList" list="url_list"/>
<datalist id="url_list">
<option value="https://www.baidu.com">百度</option>
<option value="https://www.googler.com">谷歌</option>
<option value="https://www.baidu.com">百度</option>
<option value="https://www.baidu.com">百度</option>
</datalist>
4.获取元素的不同方式(h5中的一些api的使用)
例1:
<div>
<p>这是div中的一个p</p>
<ul>
<li><p>这是li中的p</p></li>
<li>这是li</li>
</ul>
</div>
<script>
//选择器:css中选择器怎么用这里就怎么用
//document.querySelector("选择器")
//1)获取p,只能获取一个(默认第一个)
document.querySelector("div p").style.backgroundColor="yellow";
//2)获取所有p标签,document.querySelectorAll("选择器");
var pObjs = document.querySelectorAll("div p");
for(var i=0;i<pObjs.length;i++) {
pObjs[i].style.backgroundColor="green";
}
</script>
例2:
<style>
.test{
width: 300px;
height: 200px;
backgroundColor: red;
}
</style>
<div>
<input type="button" value="添加类样式" id="btn1" />
<input type="button" value="移除类样式" id="btn1" />
<input type="button" value="切换类样式" id="btn1" />
<input type="button" value="是否包含类样式" id="btn1" />
<div id="dv" class="test"></div>
</div>
<script>
my$ = function(str){
return document.querySelector(str);
}
my$("#btn1").onclick = function () {
//添加类样式方法
my$("#dv").classList.add("test");
}
my$("#btn2").onclick = function () {
//移除类样式方法
my$("#dv").classList.remove("test");
}
my$("#btn3").onclick = function () {
//切换类样式方法
my$("#dv").classList.toggle("test");
}
my$("#btn4").onclick = function () {
//判断方法
//返回的是:是否应用了这个类样式
var result = my$("#dv").classList.contains("test");
console.log(result);
}
</script>
5.自定义属性操作
<div id="dv" data-name="帅哥" data-age="20" data-user-sex="男"></div>
<script>
//设置自定义属性:data-名字 ---->都小写
//获取自定义属性
var dt = document.querySelector("#dv").dataset;
console.log(dt.name);//对象.属性
console.log(dt[age]);//对象.属性
console.log(dt.userSex);//对象.属性
//如何通过代码为标签添加自定义属性
dt.height="180";
dt.userWeight="55";
</script>
。。。未完待续
html5新特性学习笔记的更多相关文章
- java8 新特性学习笔记
Java8新特性 学习笔记 1主要内容 Lambda 表达式 函数式接口 方法引用与构造器引用 Stream API 接口中的默认方法与静态方法 新时间日期 API 其他新特性 2 简洁 速度更快 修 ...
- HTML5新特性学习-1
本文在于巩固基础 新特性:音频的使用 <!DOCTYPE html> <html> <head lang="en"> <meta char ...
- HTML5新特性学习-2
本文在于巩固基础 HTML5绘图基础 <canvas>画布元素的使用 <div> <canvas id="can" width="200px ...
- Java8新特性学习笔记(一) Lambda表达式
没有用Lambda表达式的写法: Comparator<Transaction> byYear = new Comparator<Transaction>() { @Overr ...
- java8新特性学习笔记(二) 使用流(各种API)
筛选和切片 用谓词筛选,筛选出各个不相同的元素,忽略流中的头几个元素,或将流截断至指定长度 用谓词筛选 Stream接口支持filter方法,该操作接受一个谓词(返回一个boolean的函数) 作为参 ...
- java8新特性学习笔记(二) 流的相关思想
流是什么 流是Java API的新成员,他允许你以声明的方式处理数据集合,就现在来说,可以把他们看成遍历数据集合的高级迭代器.此外,流还可以透明地并行处理,你无须写任何多线程代码. 下面例子是新老AP ...
- java8新特性学习笔记链接
https://blog.csdn.net/yitian_66/article/details/81010434
- java 新特性学习笔记
java 1.7 Files.write(path,list,StandardCharsets.UTF_8,StandardOpenOption.APPEND); String preTime = F ...
- web全栈架构师[笔记] — 03 html5新特性
HTML5新特性 一.geolocation PC端 精度比较低 通过IP库定位 移动端 通过GPS window.navigator.geolocation 单次 getCurrentPositio ...
随机推荐
- ASP.NET Core 注入和获取 AppSettings 配置
ASP.NET Core 项目中有个appsettings.json配置文件,用于存放一些配置信息,比如数据库连接字符串等,但访问的话,只能在 ASP.NET Core 项目中获取,如果我们在其他项目 ...
- 重新编译安装swoole支持OpenSSL
1.下载:wget http://pecl.php.net/get/swoole-1.9.22.tgz 2.解压:tar zxvf swoole-1.9.22.tgz 3.扩展模块:cd swoole ...
- Thinking in Java Chapter 14
From Thinking in Java 4th Edition RTTI(Run-Time Type Information),运行时类型信息,使得你可以在程序运行时发现和使用类型信息.对RTTI ...
- 【BZOJ3676】 [Apio2014]回文串(SAM,manacher)
传送门 BZOJ 洛谷 Solution 考虑我们每找到一个回文串就更新一次答案,跑个SAM,这样子复杂度是爆炸的. 接下来的就是优化: 我们可以倍增跳直到跳不了,最后的siz就是出现次数. 没了?没 ...
- Javascript高级编程学习笔记(4)—— JS中的数据类型(2)
接着昨天的文章,今天这篇文章主要讲述JS中剩余的两种数据类型String,和Object String类型 对于该类型,书中给出的解释为:由0或多个16为Unicode字符组成的字符序列. 对于JS中 ...
- JavaScript学习之路-语法
版权声明:未经博主允许不得转载 在JavaScript中如何写语法呢?这里你可以去看一些教学文档来得快一些,这里不介绍,有点基础的也可以复习一下. //定义变量并赋值 var a; //定义变量 va ...
- javaScript 节流与防抖
首先 我们要知道 节流与防抖可以干什么. 优化网络请求性能——节流 优化页面请求性能——防抖 举两个简单的小例子: 节流: 例如 有些购物页面,会有一些让你抢购的活动,到点的时候,需要你快速的点某个按 ...
- [EXP]Drupal < 8.5.11 / < 8.6.10 - RESTful Web Services unserialize() Remote Command Execution (Metasploit)
## # This module requires Metasploit: https://metasploit.com/download # Current source: https://gith ...
- Java架构师最关键三个思维转变方式,框架的合理运用
很久没有写思维的文章,特别是在写完思维的逻辑和思维的框架后,对于理论层面的自己也不太想写,但是对于实际案例层面的写起来又比较花时间,而且案例基本在IT专业领域不是所有人都能看明白. 我们前面写过思维的 ...
- eclipse连接远程服务器
eclipse里有一个强大的插件,可以直接在本地编辑远程服务器代码,Eclipse Remote System Explorer (RSE) 下载安装方法: 一.下载,高版本的eclipse可以直接下 ...