HTML5 第一天

一、什么是 HTML5

1.HTML5 的概念与定义

定义:HTML5 定义了 HTML 标准的最新版本,是对 HTML 的第五次重大修改,号称下一代的 HTML

两个概念:

  • 是一个新版本的 HTML 语言,定义了新的标签、特性和属性

  • 拥有一个强大的技术集,这些技术集是指: HTML5 、CSS3 、javascript, 这也是广义上的 HTML5

2.HTML5 拓展了哪些内容

  • 语义化标签

  • 本地存储

  • 兼容特性

  • 2D3D

  • 动画、过渡

  • CSS3 特性

  • 性能与集成

3.HTML5 的现状

绝对多数新的属性,都已经被浏览器所支持,最新版本的浏览器已经开始陆续支持最新的特性,

总的来说:HTML5 已经是大势所趋

二、HTML5 新增标签
  1. 什么是语义化

  2. 新增了哪些语义化标签

  • header --- 头部标签

  • nav --- 导航标签

  • article --- 内容标签

  • section --- 块级标签

  • aside --- 侧边栏标签

  • footer --- 尾部标签

  1. 使用语义化标签的注意
  • 语义化标签主要针对搜索引擎

  • 新标签可以使用一次或者多次

  • IE9 浏览器中,需要把语义化标签都转换为块级元素

  • 语义化标签,在移动端支持比较友好

  • 另外,HTML5 新增的了很多的语义化标签,随着课程深入,还会学习到其他的

三、多媒体音频标签
  1. 多媒体标签有两个,分别是
  • 音频 -- audio

  • 视频 -- video

  1. audio 标签说明
  • 可以在不使用标签的情况下,也能够原生的支持音频格式文件的播放,

  • 但是:播放格式是有限的

  1. audio 支持的音频格式

  1. audio 的参数

  1. audio 代码演示
<body>
<!-- 注意:在 chrome 浏览器中已经禁用了 autoplay 属性 -->
<!-- <audio src="./media/snow.mp3" controls autoplay></audio> --> <!--
因为不同浏览器支持不同的格式,所以我们采取的方案是这个音频准备多个文件
-->
<audio controls>
<source src="./media/snow.mp3" type="audio/mpeg" />
</audio>
</body>
四、多媒体视频标签
  1. video 视频标签
  • 目前支持三种格式

  1. 语法格式
<video src="./media/video.mp4" controls="controls"></video>
  1. video 参数

  1. video 代码演示
<body>
<!-- <video src="./media/video.mp4" controls="controls"></video> --> <!-- 谷歌浏览器禁用了自动播放功能,如果想自动播放,需要添加 muted 属性 -->
<video controls="controls" autoplay muted loop poster="./media/pig.jpg">
<source src="./media/video.mp4" type="video/mp4">
<source src="./media/video.ogg" type="video/ogg">
</video>
</body>
  1. 多媒体标签总结
  • 音频标签与视频标签使用基本一致

  • 多媒体标签在不同浏览器下情况不同,存在兼容性问题

  • 谷歌浏览器把音频和视频标签的自动播放都禁止了

  • 谷歌浏览器中视频添加 muted 标签可以自己播放

  • 注意:重点记住使用方法以及自动播放即可,其他属性可以在使用时查找对应的手册

五、新增 input 标签

六、新增表单属性

七、CSS3 属性选择器(上)
  1. 什么是 CSS3
  • CSS2 的基础上拓展、新增的样式
  1. CSS3 发展现状
  • 移动端支持优于 PC 端

  • CSS3 目前还草案,在不断改进中

  • CSS3 相对 H5,应用非常广泛

  1. 属性选择器列表

  1. 属性选择器代码演示
button {
cursor: pointer;
}
button[disabled] {
cursor: default
}
八、CSS3 属性选择器(下)
  1. 代码演示
input[type=search] {
color: skyblue;
} span[class^=black] {
color: lightgreen;
} span[class$=black] {
color: lightsalmon;
} span[class*=black] {
color: lightseagreen;
}
九、结构伪类选择器
  1. 属性列表

  1. 代码演示
ul li:first-child {
background-color: lightseagreen;
} ul li:last-child {
background-color: lightcoral;
} ul li:nth-child(3) {
background-color: aqua;
}
十、nth-child 参数详解
  1. nth-child 详解
  • 注意:本质上就是选中第几个子元素

  • n 可以是数字、关键字、公式

  • n 如果是数字,就是选中第几个

  • 常见的关键字有 even 偶数、odd 奇数

  • 常见的公式如下(如果 n 是公式,则从 0 开始计算)

  • 但是第 0 个元素或者超出了元素的个数会被忽略

  1. 代码演示
<style>
/* 偶数 */
ul li:nth-child(even) {
background-color: aquamarine;
} /* 奇数 */
ul li:nth-child(odd) {
background-color: blueviolet;
} /*n 是公式,从 0 开始计算 */
ul li:nth-child(n) {
background-color: lightcoral;
} /* 偶数 */
ul li:nth-child(2n) {
background-color: lightskyblue;
} /* 奇数 */
ul li:nth-child(2n + 1) {
background-color: lightsalmon;
} /* 选择第 0 5 10 15, 应该怎么选 */
ul li:nth-child(5n) {
background-color: orangered;
} /* n + 5 就是从第5个开始往后选择 */
ul li:nth-child(n + 5) {
background-color: peru;
} /* -n + 5 前五个 */
ul li:nth-child(-n + 5) {
background-color: tan;
}
</style>
十一、nth-child 和 nt-of-type 的区别
  1. 代码演示
<style>
div :nth-child(1) {
background-color: lightblue;
} div :nth-child(2) {
background-color: lightpink;
} div span:nth-of-type(2) {
background-color: lightseagreen;
} div span:nth-of-type(3) {
background-color: #fff;
}
</style>
  1. 区别
  • nth-child 选择父元素里面的第几个子元素,不管是第几个类型

  • nt-of-type 选择指定类型的元素

十二、伪元素选择器
  1. 伪类选择器

  1. 伪类选择器注意事项
  • beforeafter 必须有 content 属性

  • before 在内容前面,after 在内容后面

  • beforeafter 创建的是一个元素,但是属于行内元素

  • 创建出来的元素在 Dom 中查找不到,所以称为伪元素

  • 伪元素和标签选择器一样,权重为 1

  1. 代码演示
<style>
div {
width: 100px;
height: 100px;
border: 1px solid lightcoral;
} div::after,
div::before {
width: 20px;
height: 50px;
text-align: center;
display: inline-block;
}
div::after {
content: '德';
background-color: lightskyblue;
} div::before {
content: '道';
background-color: mediumaquamarine;
}
</style>
十三、伪元素的案例
  1. 添加字体图标
p {
width: 220px;
height: 22px;
border: 1px solid lightseagreen;
margin: 60px;
position: relative;
}
p::after {
content: '\ea50';
font-family: 'icomoon';
position: absolute;
top: -1px;
right: 10px;
}
十四、2D 转换之 translate
  1. 2D 转换
  • 2D 转换是改变标签在二维平面上的位置和形状

  • 移动: translate

  • 旋转: rotate

  • 缩放: scale

  1. translate 语法
  • x 就是 x 轴上水平移动

  • y 就是 y 轴上水平移动

transform: translate(x, y)
transform: translateX(n)
transfrom: translateY(n)
  1. 重点知识点
  • 2D 的移动主要是指 水平、垂直方向上的移动

  • translate 最大的优点就是不影响其他元素的位置

  • translate 中的100%单位,是相对于本身的宽度和高度来进行计算的

  • 行内标签没有效果

  1. 代码演示
div {
background-color: lightseagreen;
width: 200px;
height: 100px;
/* 平移 */
/* 水平垂直移动 100px */
/* transform: translate(100px, 100px); */ /* 水平移动 100px */
/* transform: translate(100px, 0) */ /* 垂直移动 100px */
/* transform: translate(0, 100px) */ /* 水平移动 100px */
/* transform: translateX(100px); */ /* 垂直移动 100px */
transform: translateY(100px)
}
十五、让一个盒子水平垂直居中
  • 看代码
十六、2D 转换 rotate
  1. rotate 旋转
  • 2D 旋转指的是让元素在二维平面内顺时针或者逆时针旋转
  1. rotate 语法
/* 单位是:deg */
transform: rotate(度数)
  1. 重点知识点
  • rotate 里面跟度数,单位是 deg

  • 角度为正时,顺时针,角度为负时,逆时针

  • 默认旋转的中心点是元素的中心点

  1. 代码演示
img:hover {
transform: rotate(360deg)
}

拓展阅读@

扫一扫下面的二维码,关注我们,获取更多精彩活动资讯,有好礼相送哦~

【腾讯云】618云上GO!云服务器限时秒杀,1核2G首年95元!

【华为云】特惠专区,多款产品限时特价!

【阿里云】上新必买抢先知,劲爆优惠不错过!

【七牛云】优惠专区,多款云产品限时抢购!

【又拍云】免费CDN专区,10G免费大放送!

【知识星球】一个资料分享的站点,各种学习资料,随时分享

微信赞助    微信打赏    支付宝打赏

免责声明:本文所有内容均为互联网上收集而来,仅供学习交流,整理文章为传播相关技术,如有侵权,请联系删除

2021年1月-第02阶段-前端基础-HTML+CSS阶段-Day01的更多相关文章

  1. 2021年3月-第02阶段-前端基础-HTML+CSS阶段-Day02

    HTML5 第二天 一.rotate 2d旋转指的是让元素在2维平面内顺时针旋转或者逆时针旋转 使用步骤: 给元素添加转换属性 transform 属性值为 rotate(角度) 如 transfor ...

  2. 2021年3月-第02阶段-前端基础-HTML+CSS阶段-Day03

    HTML5 第三天 一. 认识 3D 转换 3D 的特点 近大远小 物体和面遮挡不可见 三维坐标系 x 轴:水平向右 -- 注意:x 轴右边是正值,左边是负值 y 轴:垂直向下 -- 注意:y 轴下面 ...

  3. 2021年1月-第02阶段-前端基础-HTML+CSS进阶-VS Code 软件

    软件安装 VSCode软件 能够安装 VS Code 能够熟练使用 VS Code 软件 能够安装 VS Code 最常用的插件 1. VS Code简介 1.1 VS Code 简介 Visual ...

  4. 2020年12月-第01阶段-前端基础-HTML CSS 项目阶段(一)

    品优购项目(一) 目标: 能会引入ico图标 能简单看懂网站优化的三大标签 能使用字体图标 ( 重点 ) 能说出我们css属性书写顺序 1. 品优购项目介绍 项目名称:品优购 项目描述:品优购是一个电 ...

  5. 2020年12月-第01阶段-前端基础-HTML CSS 项目阶段(四)

    1. 品优购项目(四) 1). 详情页 detail.html 常用单词 名称 说明 主体 de_container 面包屑导航 crumb_wrap 产品介绍 product_intro ( int ...

  6. 2020年12月-第01阶段-前端基础-HTML CSS 项目阶段(三)

    品优购项目(三) 1. 首页制作 1). 楼层区 floor 注意这个floor 一个大盒子 包含, 不要给高度,内容有多少,算多少 2). 家用电器模块 这个模块 简单 不需要写样式 版心居中对齐 ...

  7. 2020年12月-第01阶段-前端基础-HTML CSS 项目阶段(二)

    品优购项目(二) 1. 品优购首页布局 命名集合: 名称 说明 快捷导航栏 shortcut 头部 header 标志 logo 购物车 shopcar 搜索 search 热点词 hotwrods ...

  8. 02 前端基础之CSS

    目录 前端基础之CSS css简介 基本选择器(重要) 组合选择器(重点) 属性选择器 分组与嵌套 伪类选择器 伪元素选择器 选择器的优先级 字体相关 背景属性 边框属性 display属性 盒子模型 ...

  9. 前端基础:CSS样式选择器

    前端基础:CSS样式选择器 CSS概述 CSS是Cascading Style Sheets的简称,中文意思是:层叠样式表,对html标签的渲染和布局.CSS规则由两个主要的部分组成:1.选择器:2. ...

随机推荐

  1. HBuilderX配置外部服务器(tomcat)查看编辑jsp界面

    HBuilderX配置外部服务器(tomcat)查看编辑jsp界面 一.第一种方法,通过启动本地tomcat,查看jsp 在tomcat的webapps目录下创建文件夹HBuilderX 打开HBui ...

  2. 【设计过程】.NET ORM FreeSql WhereDynamicFilter 动态表格查询功能

    前言 最近几乎每天40度,越热越不想面对电脑,还好开源项目都比较稳定没那么多待解决问题,趁着暑假带着女儿学习游泳已略有小成.游泳好处太多了,建议有孩子的都去学学,我是在岸边指导大约一周左右就学会了,目 ...

  3. Jmeter-记一次自动化造数引发的BeanShell写入excel实例

    一.前言 最近工作和生活说忙也忙,说不忙也不忙,但就是已经感觉很长时间没有get新的技术技能了,就是一丢丢的那种也没有,哈哈哈,今天就来讲一下最近get到的小技能吧. 工作中,由于某个需求需要几百条数 ...

  4. MySQL基本操作笔记

    一.数值类型 1.常量(1)字符串常量 ASCII字符串常量占一个字节 例如:'Hello Word' Unicode字符串常量占两个字节 例如:N'Hello Word' mysql> sel ...

  5. 精心总结十三条建议,帮你创建更合适的MySQL索引

    上篇文章讲到使用MySQL的Explain命令可以分析SQL性能瓶颈,优化SQL查询,以及查看是否用到了索引. 我们都知道创建索引可以提高查询效率,但是具体该怎么创建索引? 哪些字段适合创建索引? 哪 ...

  6. 困扰所有SAP顾问多年的问题终于解决了

    相信每个从事SAP的顾问都会遇到这样的场景:听着歌,录着SAP数据,写着ABAP代码,突然一切都消失了. 是的,SAP GUI又崩溃闪退了. 可能你还一脸懵逼不知道发生什么事情,当你重新登录系统的时候 ...

  7. WorkflowAsCode 来了,Apache DolphinScheduler 2.0.2 惊喜发布

    文章目录 前言 01 新功能 1 WorkflowAsCode 2 企业微信告警方式支持群聊消息推送 02 优化 1 简化元数据初始化流程 2 删除补数日期中的"+1"(天) 03 ...

  8. 常用类--String

    一.String 1.1 String是不可变对象 String的底层是一个 char类型字符数组 String类是final修饰的,不能被继承,不能改变,但引用可以重新赋值 String采用的编码方 ...

  9. Excel 笔记目录

    前言 Excel 是微软(Microsoft)公司推出的 Office 办公系列软件的一个重要组成部分,主要用于电子表格处理,可以高效地完成各种表格和图表的设计,进行复杂的数据计算和分析. 一句科普 ...

  10. Git 使用技巧(一):合并分支

    在合并分支之前最好保证你所有的分支都是最新的,所以你可以使用 git pull origin branchName 来拉取远程仓库到本地仓库. 假如有一个 dev 分支需要合并到 master 分支中 ...