前端学习笔记--HTML篇(一)

简介​

一看到HTML就想到它的中文意思超文本标记语言,那么它和我们接触过的其他编程语言有什么不一样呢?比如C、Java、python等等。其实答案就在字面意思上,它是一种标记语言,并非编程语言。它是一种用于创建网页的标准标记语言。

历史

看完基本介绍,那HTML怎么来的呢?我们一起来翻阅一下历史
HTML发展史

HTML1.0–HTML4.0

从HTML1.0到HTML4.0,HTML一直是SGML(标准通用标记语言)的一个应用,说到SGML不得不说一下DTD(文档类型定义)了,我们先看一下HTML4文档类型声明

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

大家可以用浏览器打开http://www.w3.org/TR/html4/strict.dtd看看里面的介绍,里面包含了整个HTML4的定义。其中由以下几行

This version of the frameset DTD is:
​
    http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd
​
Use the following (relative) URIs to refer to the DTDs and entity definitions of this specification:
​
"strict.dtd"
"loose.dtd"
"frameset.dtd"
"HTMLlat1.ent"
"HTMLsymbol.ent"
"HTMLspecial.ent"

翻译过来就是HTML4.0的DTD规范和定义的实体,我们可以看一下三个定义的实体,分别点击以下三个链接

会下载这三个实体的文件,我们用编辑器打开HTMLlat1.ent可以看到常见的nbsp定义

<!ENTITY nbsp   CDATA "&#160;" -- no-break space = non-breaking space,U+00A0 ISOnum -->

我们继续看HTMLsymbol.ent,可以发现一些字符的定义。比如Ωαβ,定义如下

<!ENTITY Omega    CDATA "&#937;" -- greek capital letter omega,
                                    U+03A9 ISOgrk3 --><!ENTITY alpha    CDATA "&#945;" -- greek small letter alpha,
                                    U+03B1 ISOgrk3 -->
<!ENTITY beta     CDATA "&#946;" -- greek small letter beta, U+03B2 ISOgrk3 -->

然后就是HTMLspecial.ent了,可以发现一些常用的字符转译。比如&<> ,定义如下

<!ENTITY amp     CDATA "&#38;"   -- ampersand, U+0026 ISOnum -->
<!ENTITY lt      CDATA "&#60;"   -- less-than sign, U+003C ISOnum -->
<!ENTITY gt      CDATA "&#62;"   -- greater-than sign, U+003E ISOnum -->

这些字符大家可以这样使用,我这里就拿lt举例了,写法如下

<p>&lt;</p>

大家可以新建个.html文件然后在浏览器打开这个文件,就会看到<了。

以上就是HTML4.0(包含HTML4.0)以前的定义了。

XHTML

我们再回过头来看一下XHTML,中文意思就是可拓展超文本标记语言,与HTML一样属于标记语言,表现形式与HMTL类似,不过语法更加严格。XHTML基于XML,而XML又是SGML的一个子集,所以它也有DTD,以下是XHTML的DTD,大家可以浏览器打开看一下
https://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd
我们会看到这一行
This is XHTML, a reformulation of HTML as a modular XML application.

说的是将HTML重制成模块化XML程序,也就验证了XHTML是XML的一个子集。

HTML与XHTML的区别

那么XHTML与HTML有啥区别呢?为啥说与HTML类似但是语法更严格了呢?XHTML与HTML区别有以下几点:

  • XHTML必须声明<!DOCTYPE>

  • XHTML的xmlns属性必须在<html>

  • XHTML必须包含<html>,<head>,<title><body>

  • XHTML元素必须是嵌套的,比如<b><i>文本<i><b>

  • XHTML元素必须有闭合标签,比如<p>文本</p>

  • XHTML元素标签必须小写

  • XHTML属性名必须小写

  • XHTML属性值必须有引号

  • XHTML属性必须包含属性名和属性值

以上都是XHTML的特有的,HTML其实都没有要求这么严格的。
公众号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值