XHTML学习

XHTML学习

  • [1.XHTML 简介](#1.XHTML 简介)
  • [2.XHTML - 元素标准](#2.XHTML - 元素标准)
  • [3.XHTML - 属性标准](#3.XHTML - 属性标准)

1.XHTML 简介

XHTML是一个严格遵循 XML语法规则的 HTML 标准。它是 HTML4 的一种重构版本,结合了 HTML 的灵活性和 XML 的严格性,如今XHTML已经得到了所有主流浏览器的支持

与 HTML 相比最重要的区别:

文档结构

  • XHTML DOCTYPE 是强制性的
  • <html> 中的 XML namespace 属性是强制性的
  • <html>、<head>、<title> 以及 <body> 也是强制性的

元素语法

  • XHTML 元素必须正确嵌套
  • XHTML 元素必须始终关闭
  • XHTML 元素必须小写
  • XHTML 文档必须有一个根元素

属性语法

  • XHTML 属性必须使用小写
  • XHTML 属性值必须用引号包围
  • XHTML 属性最小化也是禁止的(属性最小化是在 HTML 中允许的一种简写形式)

验证页面是否符合XHTML标准:

https://validator.w3.org/check?uri=http%3A%2F%2Fwww.w3school.com.cn%2Fhtml%2Findex.asp


2.XHTML - 元素标准

++1、XHTML 元素必须正确嵌套++

在 HTML 中,某些元素可以不正确地彼此嵌套在一起,就像这样:

html 复制代码
<b><i>This text is bold and italic</b></i>

在 XHTML 中,所有元素必须正确地彼此嵌套,就像这样:

html 复制代码
<b><i>This text is bold and italic</i></b>

++2、XHTML 元素必须始终关闭++

这是错误的:

html 复制代码
<p>This is a paragraph
<p>This is another paragraph

这是正确的:

html 复制代码
<p>This is a paragraph</p>
<p>This is another paragraph</p>

++3、空元素也必须关闭++

这是错误的:

html 复制代码
A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">

这是正确的:

html 复制代码
A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />

++4、XHTML 元素必须小写++

这是错误的:

html 复制代码
<BODY>
  <P>This is a paragraph</P>
</BODY>

这是正确的:

html 复制代码
<body>
  <p>This is a paragraph</p>
</body>

3.XHTML - 属性标准

++1、XHTML 属性必须使用小写++

这是错误的:

html 复制代码
<table WIDTH="100%">

这是正确的:

html 复制代码
<table width="100%">

++2、XHTML 属性值必须用引号包围++

这是错误的:

html 复制代码
<table width=100%>

这是正确的:

html 复制代码
<table width="100%">

++3、禁止属性简写++

这是错误的:

html 复制代码
<input checked>
<input readonly>
<input disabled>
<option selected>

这是正确的:

html 复制代码
<input checked="checked" />
<input readonly="readonly" />
<input disabled="disabled" />
<option selected="selected" />
相关推荐
Csvn23 分钟前
TypeScript 大型项目架构:从单体 tsconfig 到分层可扩展的工程
前端
斯维赤1 小时前
AI Agent学习之路 | Prompt Engineering(提示词工程)的三板斧核心技巧
人工智能·学习·prompt
计算机魔术师2 小时前
Dario Amodei 发文呼吁为前沿 AI 降速并提出三点计划
前端
计算机魔术师2 小时前
OpenAI的AI代理偷偷给RubyGems下毒,我们却毫无察觉
前端
甲维斯2 小时前
0代码,0建模,3句话开发一个3D游戏!
前端·游戏·游戏开发
IT_陈寒3 小时前
Vue的响应式更新把我坑惨了,原来问题出在这
前端·人工智能·后端
tingke3 小时前
别再堆 AGENTS.md 了:前端团队的 Agent 上下文分层落地指南
前端
2301_802651083 小时前
imx6ull裸机开发:UART
学习
李明卫杭州3 小时前
React 复合事件系统对比解析
前端·javascript·react.js
葡萄城技术团队4 小时前
SpreadJS V19.2 新特性揭秘:FILTERXML 函数
前端