XHTML 简介
一、XHTML 简介
- XHTML 指可扩展超文本标签语言(EXtensible HyperText Markup Language)。
- XHTML 的目标是取代 HTML。
- XHTML 与 HTML 4.01 几乎是相同的。
- XHTML 是更严格更纯净的 HTML 版本。
- XHTML 是作为一种 XML 应用被重新定义的 HTML。
- XHTML 是一个 W3C 标准。
XHTML 是 HTML 与 XML(扩展标记语言)的结合物,包含了所有与 XML 语法结合的 HTML 4.01 元素。
通过把 HTML 和 XML 各自的长处加以结合,我们得到了在现在和未来都能派上用场的标记语言 - XHTML。
二、XHTML v HTML
注意
- XHTML 元素必须被正确地嵌套。
- XHTML 元素必须被关闭。
- 标签名必须用小写字母。
- XHTML 文档必须拥有根元素。
XHTML 元素必须被正确嵌套
某些元素可以不正确地被嵌套,如下:
<b><i>This text is bold and italic</b></i>
正确的嵌套如下:
<b><i>This text is bold and italic</i></b>
XHTML 元素必须被关闭(空标签也必须被关闭)
这是错误的:
<p>This is a paragraph
<p>This is another paragraph
这是正确的:
<p>This is a paragraph</p>
<p>This is another paragraph</p>
空标签的关闭,如:
<br />
<hr />
<img src="happy.gif" alt="Happy face" />
元素必须小写:
如下是错误的:
<BODY>
<P>This is a paragraph</P>
</BODY>
正确的如下:
<body>
<p>This is a paragraph</p>
</body>
XHTML 文档必须拥有一个根元素
所有的 XHTML 元素必须被嵌套于 <html> 根元素中。其余所有的元素均可有子元素。子元素必须是成对的且被嵌套在其父元素之中。
<html>
<head> ... </head>
<body> ... </body>
</html>
三、XHTML 语法
编写 XHTML 代码需要纯净的 HTML 语法。更多的 XHTML 语法规则如下:
- 属性名称必须小写
- 属性值必须加引号
- 属性不能简写
- 用 Id 属性代替 name 属性
- XHTML DTD 定义了强制使用的 HTML 元素
属性名称必须小写
错误如下:
<table WIDTH="100%">
正确如下:
<table width="100%">
属性值必须加引号
错误如下:
<table width=100%>
正确如下:
<table width="100%">
属性不能简写
错误如下:
<input checked>
<input readonly>
<input disabled>
<option selected>
<frame noresize>
正确如下:
<input checked="checked" />
<input readonly="readonly" />
<input disabled="disabled" />
<option selected="selected" />
<frame noresize="noresize" />
用 id 属性代替 name 属性
HTML 4.01 针对下列元素定义 name 属性:a, applet, frame, iframe, img, 和map。在 XHTML 中不鼓励使用 name 属性,应该使用 id 取而代之。
错误如下:
<img src="picture.gif" name="picture1" />
正确如下:
<img src="picture.gif" id="picture1" />
重要的兼容性提示:你应该在 "/" 符号前添加一个额外的空格,以使你的 XHTML 与当今的浏览器相兼容。
语言属性(lang)
lang 属性应用于几乎所有的 XHTML 元素。它定义元素内部的内容的所用语言的类型。
如果在某元素中使用 lang 属性,就必须添加额外的 xml:lang
<div lang="no" xml:lang="no">Heia Norge!</div>
强制使用的 XHTML 元素
所有 XHTML 文档必须进行文件类型声明(DOCTYPE declaration)。在 XHTML 文档中必须存在html、head、body元素,而 title 元素必须位于在 head 元素中。
模板如下:
<!DOCTYPE Doctype goes here>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title goes here</title>
</head> <body>
</body> </html>
四、XHTML DTD(文档类型定义)
XHTML 定义了三种文件类型声明,使用最普遍的是 XHTML Transitional。
一个 XHTML 文档主要有三个主要的部分
- DOCTYPE
- Head
- Body
基本的文档结构:
<!DOCTYPE ...>
<html>
<head>
<title>... </title>
</head>
<body> ... </body>
</html>
XHTML 简介的更多相关文章
- XHTML学习进度备忘
书签:XHTML 高级教程没有看:另外跳过的内容有待跟进 __________________ 学习资源:W3School. _________________ 跳过的内容: 1.“XHTML 简介” ...
- 七、XHTML介绍
XHTML简介 1.什么是XHTML? XHTML指的是可扩展超文本标记语言 XHTML与HTML4.01几乎是相同的 XHTML是更严格更纯净的HTML版本 XHTML得到所有主流浏览器的支持 2. ...
- WEB入门.五 页面设计简介
学习内容 Ø XHTML 的发展历程 Ø XHTML 和 HTML 的区别 Ø XHTML的DOCTYPE和基本标签 Ø CSS 常用属性 能力 ...
- XHTML的规范化
-------------------siwuxie095 XHTML 简介 1.什么是 XHTML? XHTM ...
- Web客户端语言HTML、XHTML和XML相关知识介绍
HTML简介 HTML(Hyper Text Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言.HTML文本是由HTM ...
- atitit.web原理 理论attilax总结
atitit.web原理 理论attilax总结 1. Web3.01 2. Web的未来趋势1 3. Web语言与应用导论_百度百科.html2 4. <Web设计与编程导论(影印版)> ...
- web从入门开始(4)--------链接
l 图片标记 l 语法格式<img> l 常用属性 l width:图片宽度 单位:像素 l height:图片高度 单位:像素 l border:边框的粗细 l src:图 ...
- 复习HTML+CSS(5)
n <meta>标记 <meta>的主要作用,是提供网页的源信息.比如:指定网页的搜索关键字 <meta>标记有两个属性:http-equiv和name. 1. ...
- WEB程序设计 第7版
WEB程序设计 第7版 D11章基础知识1.1internet简介1.1.1起源1.1.2internet的含义1.1.3ip地址1.1.4域名1.2万维网1.2.1起源1.2.2web还是int ...
随机推荐
- vue之initComputed模块源码说明
要想理解原理就得看源码,最近网上也找了好多vue初始化方法(8个init恶魔...) 因为也是循序渐进的理解,对initComputed计算属性的初始化有几处看得不是很明白,网上也都是含糊其辞的(要想 ...
- scroll-view组件bindscroll实例应用:自定义滚动条
我们知道scroll-view组件作为滑动控件非常好用,而有时候我们想放置一个跟随滚动位置来跟进的滚动条,但又不想用滚动条api该怎么办呢?(当然是自己写一个呗还能怎么办[自黑冷漠脸])嗯,没错.自己 ...
- Java基础--数组的定义
1.数组的定义 数组:一组能够储存相同数据类型值的变量的集合. 2.数组的赋值方式 (1)使用默认的初始值来初始化数组中的每一个元素 语法:数组元素类型[]数组名 = new数组元素类型[数组中元素的 ...
- socket TCP 从0实现音频传输 ALSA 播放
RTP标准是采用 UDP 发送,有不少现成的开源库,但不在本文讨论的范围内.UDP 用户数据报,不提供流程,安全传输的功能,但速度快,能提供多播,广播,没有序列号 SEQ ,有 MTU 限制,1500 ...
- Mac上Burpsuite 拦截不到HTTPS流量怎么设置
在百度了一堆以及修修改改下终于拦截到HTTPS流量了. 安装步骤就大致讲一下吧 网上下载burp的安装包,然后Mac上直接打开这个burpUnlimited.jar包就可以了 我直接选择的第一个 ...
- Python卸载
前言 自己瞎折腾下载Python3.8.2,把之前下载好的python3.7.3覆盖掉.在运行之前Python环境的程序多次未果后.找到原因,Python3.7.3的包不支持Python3.8.2.于 ...
- pytest、tox、Jenkins实现python接口自动化持续集成
pytest介绍 pytest是一款强大的python测试工具,可以胜任各种级别的软件测试工作,可以自动查找测试用并执行,并且有丰富的基础库,可以大幅度提高用户编写测试用例的效率,具备可扩展性,用户自 ...
- Maven pom.xml 添加本地jar包依赖以及打包方法
Maven项目打包时,如果遇到需要添加本地jar包依赖的时候,可以选择两种方法: 1. 安装到本地仓库 第一种方法比较常规,适用于需要添加的jar包也是由maven项目导出,含有pom文件的时候.只需 ...
- 爬虫前奏——初谈Requests库
什么是Requests Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库如果你看过上篇文章关于urllib库的使用,你会发现,其 ...
- (11)nc命令(每周一个linux命令)
nc(netcat)实用程序几乎可用于所有涉及TCP或UDP的事情.它可以打开TCP连接,发送UDP数据包,监听任意TCP和UDP端口,进行端口扫描,处理IPv4和IPv6.与telnet不同,nc可 ...