html5和css3相较于过去的主要变化
HTML5 相较于之前的 HTML 版本(如 HTML 4.01)进行了许多重要的更新和改进,包括删除了一些过时的标签,增加了一些新的标签,以及对现有标签的增强。以下是 HTML5 中删除和增加的标签的详细列表:
删除的标签
在 HTML5 中,以下标签被认为是过时的,并且不再推荐使用:
<font>- 用于设置字体样式。<center>- 用于居中对齐内容。<big>- 用于增大文本。<small>- 用于缩小文本。<strike>- 用于表示删除线文本。<tt>- 用于表示打字机字体。<u>- 用于下划线文本(在 HTML5 中,<u>仍然存在,但其语义已改变,主要用于表示非语义的下划线)。<applet>- 用于嵌入 Java 小程序。<frame>和<frameset>- 用于创建框架布局。<isindex>- 用于创建单行输入框。<marquee>- 用于创建滚动文本。<blink>- 用于闪烁文本(不被所有浏览器支持)。
新增的标签
HTML5 引入了许多新的标签,以增强语义和功能,主要包括:
- 结构性标签:
<header>- 定义文档的头部。<footer>- 定义文档的底部。<nav>- 定义导航链接的部分。<article>- 定义独立的内容块。<section>- 定义文档中的一个区域。<aside>- 定义与主内容相关的侧边内容。
 - 多媒体标签:
<audio>- 用于嵌入音频内容。<video>- 用于嵌入视频内容。<track>- 用于为<video>和<audio>提供文本轨道(如字幕)。
 - 图形和效果:
<canvas>- 用于绘制图形和动画。<svg>- 用于嵌入可缩放矢量图形。
 - 表单控件:
<input type="date">- 日期选择器。<input type="time">- 时间选择器。<input type="email">- 电子邮件输入框。<input type="url">- URL 输入框。<input type="range">- 范围选择器。<input type="color">- 颜色选择器。<datalist>- 提供输入建议的列表。<output>- 用于显示计算结果。
 - 其他标签:
<progress>- 用于表示任务的进度。<meter>- 用于表示测量的范围。
 
CSS3 相较于之前的 CSS 版本(如 CSS2.1)进行了显著的改进和扩展,增加了许多新特性和功能。以下是 CSS3 中的一些主要变化,包括新增的特性和功能,以及一些不再推荐使用的特性。
新增的特性和功能
- 选择器:
- 新增了许多选择器,如 
:nth-child(),:nth-of-type(),:last-child,:first-of-type,:not(),:focus,:hover等。 
 - 新增了许多选择器,如 
 - 盒模型:
box-shadow- 为元素添加阴影效果。text-shadow- 为文本添加阴影效果。
 - 边框和背景:
border-radius- 创建圆角边框。linear-gradient和radial-gradient- 创建渐变背景。background-size- 控制背景图像的大小。
 - 布局:
- Flexbox - 提供了一种新的布局模型,使得在容器中对齐和分配空间变得更加简单。
 - Grid Layout - 允许创建复杂的二维布局。
 
 - 过渡和动画:
transition- 定义元素状态变化时的过渡效果。animation- 创建复杂的动画效果。
 - 多列布局:
column-count和column-gap- 支持多列文本布局。
 - 媒体查询:
- 媒体查询的增强,使得响应式设计变得更加容易,支持不同设备的样式调整。
 
 - 自定义属性:
- CSS 变量(如 
--my-variable)允许在样式表中定义和使用自定义属性。 
 - CSS 变量(如 
 - 新单位:
- 新增了 
vh(视口高度)、vw(视口宽度)、vmin和vmax单位,便于响应式设计。 
 - 新增了 
 - 文本效果:
text-overflow- 控制文本溢出时的显示方式。word-wrap和overflow-wrap- 控制文本换行。
 
删除或不再推荐使用的特性
虽然 CSS3 没有正式删除任何 CSS2.1 的特性,但一些特性被认为是不推荐使用的,主要是因为它们的功能可以通过 CSS3 的新特性实现,或者它们在现代浏览器中的支持不佳:
<font>标签 - 在 HTML 中使用<font>标签来设置字体样式已被 CSS 取代。<center>标签 - 使用 CSS 的text-align属性来居中内容。<marquee>标签 - 使用 CSS 动画或 JavaScript 替代。