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" />
相关推荐
潍坊老登30 分钟前
写了一个某音自动刷视频,通过大模型分析视频主题的Android应用
前端
蔓越莓44 分钟前
性能优化:webpack打包层面优化
前端·面试
TJHHH.1 小时前
XSS-labs-master
前端·web安全·xss
风月说与山鬼1 小时前
十二、Vue插件
前端·vue.js
spter。1 小时前
一次 Redis SETNX 的小插曲,我重新理解了原子性
前端·redis·bootstrap
Sayai1 小时前
【无标题】ECharts 实现日志量异常检测:基线 ±Kσ 基带 + 灵敏度切换(Vue2 实战)
前端·javascript·echarts
zjnlswd1 小时前
C#学习笔记4
笔记·学习·c#
minglie11 小时前
在linux环境烧录esp8266
学习
用户3169353811832 小时前
SpringBoot + Vue 项目生产环境部署完整指南
前端·后端
Csvn2 小时前
🔍 TypeScript `satisfies` 操作符:既要类型安全,又要推断的原始字面量类型
前端