HTML5与HTML4的区别

本文介绍了HTML5相较于HTML4的主要区别,包括DOCTYPE声明简化、文档编码指定方式的变化、标记元素的省略规则更新、boolean值属性的应用、引号省略规范、新增结构与非结构元素、表单和链接相关属性的增强、废弃元素与属性等内容。

HTML5发展已有4年了,现在已经逐步成熟,而且各主流浏览器也已经支持到位,是时候学习一下了。首先需要了解HTML5与HTML4的区别,这让学习思路更清晰。

语法变化

  • 内容类型(ContentType)不变
    扩展名和ContentType仍然和HTML4保持一致:扩展名是“.html”或“.htm”,ContentType是“text/html”。
  • DOCTYPE声明简化
    不再是HTML4带版本的繁琐声明
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    而是非常简短的声明
    <!doctype html>
  • 指定文档编码
    还是使用meta来指定文档编码,但也对HTML4做了简化,HTML4
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    HTML5直接指定编码
    <meta charset="utf-8">
    实际上HTML5对上面的两种方式都兼容,但不能混用!而且HTML5推荐使用UTF-8编码。
  • 可以省略的标记元素
    1. 不允许写结束标记的元素
      area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr
      不允许使用开始标记与结束标记将元素括起来的形式,只允许使用“<元素/>”的形式进行书写,例如“<br>....</br>”是错误。
    2. 可以省略结束标记的元素
      li、dt、dd、p、rt、rp、optgroup、option、colgroup、thead、tbody、tfoot、tr、td、th
    3. 可以省略全部标记的元素
      html、head、body、colgroup、tbody 
      该元素可以完全省略,实际上即使标记被省略了,他们也还是以隐式的方式存在的,如将body元素省略时,还是可以通过document.body进行访问,这是因为浏览器会自动加上它们。 
  • 具有boolean值的属性
    有些属性是boolean类型的,如disabled、readonly等,只设属性不设置属性值、或把属性值设为任何值即使是空字符串都为真;而不设属性或把属性值设为false都为假
    <!--只设属性不设属性值为真-->
    <input type="checkbox" checked>
    <!--属性值设为属性名为真-->
    <input type="checkbox" checked="checked">
    <!--属性值设为true为真-->
    <input type="checkbox" checked="true">
    <!--属性值设为空字符串为真-->
    <input type="checkbox" checked="">
    <!--属性值即使设为false都为真-->
    <input type="checkbox" checked="false">
    <!--属性设为任何值都为真-->
    <input type="checkbox" checked="ssss">
    
    <!--不设属性为假-->
    <input type="checkbox">
  • 省略引号
    我们知道在指定属性值的时候,属性值两边既可以用双引号,也可以用单引号。而HTML5在此基础上做了一些改进,当属性值不包括空字符串、“<”、“>”、“=”、单引号、双引号等字符串时属性值两边的引号可以省略。如:
    <!--只设属性不设属性值为真-->
    <input type=checkbox checked>
    <!--属性值设为属性名为真-->
    <input type=checkbox checked=checked>
    <!--属性值设为true为真-->
    <input type=checkbox checked=true>
    <!--属性值设为空字符串为真-->
    <input type=checkbox checked="">
    <!--属性值即使设为false都为真-->
    <input type=checkbox checked=false>
    <!--属性设为任何值都为真-->
    <input type=checkbox checked=ssss>
    
    <!--不设属性为假-->
    <input type=checkbox>

新增元素

  • 新增结构元素
    主体结构元素
    <section>:表示页面的一个内容区块; 
    <article>:表示页面一块独立内容;
    <aside>:表示页面上<article>元素之外的但是与<article>相关的辅助信息;
    <nav>:表示页面中导航链接的部分;
    非主体结构元素
    <header>:表示页面中一个内容区块<section>或者整个页面的标题;
    <hgroup>:表示对于整个页面或者页面一个内容区块<section>的<header>进行组合;
    <footer>:表示对整个页面或者页面一个内容区块<session>的页脚;
    <figure>:表示一段独立的文档流内容;
    <figcaption>:表示<figure>元素的标题;
  • 与结构无关的元素
    <video>:用于定义视频,无需<object type="video/ogg">;
    <audio>:用于定义音频, 无需<object type="application/ogg">;
    <embed>:用于插入各种多媒体,可以各种格式;
    <mark>: 用于向用户在视觉上突出显示某些文字;
    <progress>:表示运行中的进程;
    <time>: 用于表示日期或者时间, 或者两者;
    <ruby>元素: 表示ruby注释;
    <rt>:表示字符的解释或者发音;
    <rp>:在<ruby>内使用,表示不支持<ruby>元素的浏览器所显示的内容;
    <wbr>元素:表示软换行,可以根据浏览器的窗口或者父级元素的宽度自己决定;
    <canvas>:表示画布,然后让脚本把想画的东西画在上面;
    <command>:表示命令按钮;
    <details>:表示当用户点击某元素时候想要得到的细节信息,常和<summary>元素联合使用;
    <summary>:是<details>元素的第一个子元素,表示了<details>的标题;
    <datalist>元素:表明了可以选择的数据列表,以下拉列表形式显示;
    <datagrid>:表明了可选的数据列表,但是以树列表的形式显示;
    <keygen>:表示生成密钥;
    <output>:表示不同类型的输出;
    <source>:表示为<video><audio>等媒体元素定义资源;
    <menu>:表示了菜单列表;
  • 新增的<input>元素的类型
    <email>: 表示必须输入email地址的文本输入框;
    <url>:表示必须输入url地址的文本输入框;
    <number>:表示必须输入数值的文本输入框;
    <range>:表示必须输入一定范围内数字的文本输入框;
    Date Pickers:HTML5拥有多个可供选取日期和时间的新型输入文本框如date、month、week、time、datetime等;

废除的元素

  • 能用css代替的元素
    basefont、big、center、font、s、strike、tt、u。这些元素纯粹是为画面展示服务的,HTML5中提倡把画面展示性功能放在css中统一编辑。
  • 不再使用frame框架
    frameset、frame、noframes。HTML5中不支持frame框架,只支持iframe框架,或者用服务器方创建的由多个页面组成的符合页面的形式,删除以上这三个标签。
  • 只有部分浏览器支持的元素
    applet、bgsound、blink、marquee等标签。
  • 其他被废除的元素
    废除rb,树勇ruby替代;
    废除acronym使用abbr替代;
    废除dir使用ul替代;
    废除isindex使用form与input相结合的方式替代;
    废除listing使用pre替代;
    废除xmp使用code替代;
    废除nextid使用guids;
    废除plaintex使用“text/plian”(无格式正文)MIME类型替代;

新增的属性

  1. 表单相关的属性
    • 对input(type=text)、select、textarea与button指定autofocus属性。它以指定属性的方式让元素在画面打开时自动获得焦点。
    • 对input(type=text)、textarea指定placeholder属性,它会对用户的输入进行提示,提示用户可以输入的内容。
    • 对input、output、select、textarea、button与fieldset指定form属性。它声明属于哪个表单,然后将其放置在页面的任何位置,而不失表单之内。
    • 对input(type=text)、textarea指定required属性。该属性表示用户提交时进行检查,检查该元素内必定要有输入内容。
    • 为input标签增加几个新的属性:autocomplete、min、max、multiple、pattern与step。还有list属性与datalist元素配合使用;datalist元素与autocomplete属性配合使用。multiple属性允许上传时一次上传多个文件; pattern属性用于验证输入字段的模式,其实就是正则表达式。step 属性规定输入字段的合法数字间隔(假如 step="3",则合法数字应该是 -3、0、3、6,以此类推),step 属性可以与 max 以及 min 属性配合使用,以创建合法值的范围。
    • 为input、button元素增加formaction、formenctype、formmethod、formnovalidate与formtarget属性。用户重载form元素的action、enctype、method、novalidate与target属性。为fieldset元素增加disabled属性,可以把它的子元素设为disabled状态。
    • 为input、button、form增加novalidate属性,可以取消提交时进行的有关检查,表单可以被无条件地提交。
  2. 链接相关属性
    • 为a、area增加media属性。规定目标 URL 是为什么类型的媒介/设备进行优化的。该属性用于规定目标 URL 是为特殊设备(比如 iPhone)、语音或打印媒介设计的。该属性可接受多个值。只能在 href 属性存在时使用。
    • 为area增加herflang和rel属性。hreflang 属性规定在被链接文档中的文本的语言。只有当设置了 href 属性时,才能使用该属性。注释:该属性是纯咨询性的。rel 属性规定当前文档与被链接文档/资源之间的关系。只有当使用 href 属性时,才能使用 rel 属性。
    • 为link增加size属性。sizes 属性规定被链接资源的尺寸。只有当被链接资源是图标时 (rel="icon"),才能使用该属性。该属性可接受多个值。值由空格分隔。
    • 为base元素增加target属性,主要是保持与a元素的一致性。
  3. 其他属性
    • 为ol增加reversed属性,它指定列表倒序显示;
    • 为meta增加charset属性;
    • 为menu增加type和label属性。label为菜单定义一个课件的标注,type属性让才当可以以上下文菜单、工具条与列表cande但三种形式出现。
    • 为style增加scoped属性。它允许我们为文档的指定部分定义样式,而不是整个文档。如果使用 "scoped" 属性,那么所规定的样式只能应用到 style 元素的父元素及其子元素。
    • 为script增减属性,它定义脚本是否异步执行。async 属性仅适用于外部脚本(只有在使用 src 属性时)有多种执行外部脚本的方法:
      如果 async="async":脚本相对于页面的其余部分异步地执行(当页面继续进行解析时,脚本将被执行);
      如果不使用 async 且 defer="defer":脚本将在页面完成解析时执行;
      如果既不使用 async 也不使用 defer:在浏览器继续解析页面之前,立即读取并执行脚本;
    • 为html元素增加manifest,开发离线web应用程序时他与API结合使用,定义一个URL,在这个URL上描述文档的缓存信息。
    • 为iframe增加撒个属性,sandbox、seamless、srcdoc。用来提高页面安全性,防止不信任的web页面执行某些操作。

废除的属性

在HTML 4中使用的属性 使用该属性的元素 在HTML 5中的替代方案
rev link、a rel
charset link、a 在被链接的资源的中使用HTTP Content-type头元素
shape、coords a 使用area元素代替a元素
longdesc img、iframe 使用a元素链接到校长描述
target link 多余属性,被省略
nohref area 多余属性,被省略
profile head 多余属性,被省略
version html 多余属性,被省略
name img id
scheme meta 只为某个表单域使用scheme
archive、chlassid、codebose、codetype、declare、standby object 使用data与typc属性类调用插件。需要使用这些属性来设置参数时,使用param属性
valuetype、type param 使用name与value属性,不声明之的MIME类型
axis、abbr td、th 使用以明确简洁的文字开头、后跟详述文字的形式。可以对更详细内容使用title属性,来使单元格的内容变得简短
scope td 在被链接的资源的中使用HTTP Content-type头元素
align caption、input、legend、div、h1、h2、h3、h4、h5、h6、p 使用CSS样式表替代
alink、link、text、vlink、background、bgcolor body 使用CSS样式表替代
align、bgcolor、border、cellpadding、cellspacing、frame、rules、width table 使用CSS样式表替代
align、char、charoff、height、nowrap、valign tbody、thead、tfoot 使用CSS样式表替代
align、bgcolor、char、charoff、height、nowrap、valign、width td、th 使用CSS样式表替代
align、bgcolor、char、charoff、valign tr 使用CSS样式表替代
align、char、charoff、valign、width col、colgroup 使用CSS样式表替代
align、border、hspace、vspace object 使用CSS样式表替代
clear br 使用CSS样式表替代
compace、type ol、ul、li 使用CSS样式表替代
compace dl 使用CSS样式表替代
compace menu 使用CSS样式表替代
width pre 使用CSS样式表替代
align、hspace、vspace img 使用CSS样式表替代
align、noshade、size、width hr 使用CSS样式表替代
align、frameborder、scrolling、marginheight、marginwidth iframe 使用CSS样式表替代
autosubmit menu  

全局属性

HTML5中新增了一个“全局属性”的概念,所谓全局属性,是指可以对任何元素都使用的属性。

  • contentEditable
    该属性允许用户编辑元素中的内容,其中该元素必须是可获得鼠标焦点的元素,该属性还具有继承性,没设置该属性的子元素继承父元素的属性。
  • designMode
    该属性置顶整个页面是否可编辑,它只能在脚本中设置on或off,但设置为on时,整个页面支持contentEditable属性的元素都可编辑;
  • hidden
    所有元素均允许使用一个hidden的属性,该属性通知浏览器不渲染该元素,使该元素处于不可见状态,但元素在Dom中存在;
  • spellcheck
    拼写检查,但当元素被设为readOnly或disabled,则不拼写检查;
  • tabindex
    tab键遍历顺序;但它还有一个妙用:当元素不支持获得焦点,可以添加tabindex属性,如果不想tab键获得焦点,可以把值设置为-1即可;

转载于:https://www.cnblogs.com/zhaiqianfeng/p/4621654.html

标题SpringBoot智能在线预约挂号系统研究AI更换标题第1章引言介绍智能在线预约挂号系统的研究背景、意义、国内外研究状及论文创新点。1.1研究背景意义阐述智能在线预约挂号系统对提升医疗服务效率的重要性。1.2国内外研究状分析国内外智能在线预约挂号系统的研究应用情况。1.3研究方法及创新点概述本文采用的技术路线、研究方法及主要创新点。第2章相关理论总结智能在线预约挂号系统相关理论,包括系统架构、开发技术等。2.1系统架构设计理论介绍系统架构设计的基本则和常用方法。2.2SpringBoot开发框架理论阐述SpringBoot框架的特点、优势及其在系统开发中的应用。2.3数据库设计管理理论介绍数据库设计则、数据模型及数据库管理系统。2.4网络安全数据保护理论讨论网络安全威胁、数据保护技术及其在系统中的应用。第3章SpringBoot智能在线预约挂号系统设计详细介绍系统的设计方案,包括功能模块划分、数据库设计等。3.1系统功能模块设计划分系统功能模块,如用户管理、挂号管理、医生排班等。3.2数据库设计设计数据库表结构,确定字段类型、主键及外键关系。3.3用户界面设计设计用户友好的界面,提升用户体验。3.4系统安全设计阐述系统安全策略,包括用户认证、数据加密等。第4章系统实测试介绍系统的实过程,包括编码、测试及优化等。4.1系统编码实采用SpringBoot框架进行系统编码实4.2系统测试方法介绍系统测试的方法、步骤及测试用例设计。4.3系统性能测试分析对系统进行性能测试,分析测试结果提出优化建议。4.4系统优化改进根据测试结果对系统进行优化和改进,提升系统性能。第5章研究结果呈系统实后的效果,包括功能实、性能提升等。5.1系统功能实效果展示系统各功能模块的实效果,如挂号成功界面等。5.2系统性能提升效果对比优化前后的系统性能
在金融行业中,对信用风险的判断是核心环节之一,其结果对机构的信贷政策和风险控制策略有直接影响。本文将围绕如何借助机器学习方法,尤其是Sklearn工具包,建立用于判断信用状况的预测系统。文中将涵盖逻辑回归、支持向量机等常见方法,通过实际操作流程进行说明。 一、机器学习基本概念 机器学习属于人工智能的子领域,其基本理念是通过数据自动学习规律,而非依赖人工设定规则。在信贷分析中,该技术可用于挖掘历史数据中的潜在规律,进而对未来的信用表进行预测。 二、Sklearn工具包概述 Sklearn(Scikit-learn)是Python语言中广泛使用的机器学习模块,提供多种数据处理和建模功能。它简化了数据清洗、特征提取、模型构建、验证优化等流程,是数据科学项目中的常用工具。 三、逻辑回归模型 逻辑回归是一种常用于分类任务的线性模型,特别适用于二类问题。在信用评估中,该模型可用于判断借款人是否可能违约。其通过逻辑函数将输出映射为0到1之间的概率值,从而表示违约的可能性。 四、支持向量机模型 支持向量机是一种用于监督学习的算法,适用于数据维度高、样本量小的情况。在信用分析中,该方法能够通过寻找最佳分割面,区分违约非违约客户。通过选用不同核函数,可应对复杂的非线性关系,提升预测精度。 五、数据预处理步骤 在建模前,需对始数据进行清理转换,包括处理缺失值、识别异常点、标准化数值、筛选有效特征等。对于信用评分,常见的输入变量包括收入水平、负债比例、信用历史记录、职业稳定性等。预处理有助于减少噪声干扰,增强模型的适应性。 六、模型构建验证 借助Sklearn,可以将数据集划分为训练集和测试集,通过交叉验证调整参数以提升模型性能。常用评估指标包括准确率、召回率、F1值以及AUC-ROC曲线。在处理不平衡数据时,更应关注模型的召回率特异性。 七、集成学习方法 为提升模型预测能力,可采用集成策略,如结合多个模型的预测结果。这有助于降低单一模型的偏差方差,增强整体预测的稳定性准确性。 综上,基于机器学习的信用评估系统可通过Sklearn中的多种算法,结合合理的数据处理模型优化,实对借款人信用状况的精准判断。在实际应用中,需持续调整模型以适应市场变化,保障预测结果的长期有效性。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值