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" />
相关推荐
qq_4152162517 小时前
vue3搭建项目yarn+vue3+webpack+less+element-plus
前端·webpack·less
天天向上102417 小时前
VueUse的使用
前端·vue.js·vscode
9ilk17 小时前
【仿RabbitMQ的发布订阅式消息队列】 ---- 功能测试联调
linux·服务器·c++·分布式·学习·rabbitmq
('-')17 小时前
《从根上理解MySQL》第一章学习笔记
笔记·学习·mysql
猪猪拆迁队18 小时前
前端图形引擎架构设计:双引擎架构设计
前端·后端·架构
d111111111d18 小时前
STM32外设学习-串口发送数据-接收数据(笔记)
笔记·stm32·学习
Elias不吃糖18 小时前
eventfd 初认识Reactor/多线程服务器的关键唤醒机制
linux·服务器·c++·学习
宋辰月18 小时前
学习react第三天
前端·学习·react.js
bug总结18 小时前
更新原生小程序封装(新增缓存订阅)完美解决
前端·缓存·小程序
5335ld19 小时前
后端给的post 方法但是要求传表单数据格式(没有{})
开发语言·前端·javascript·vue.js·ecmascript