如何编写符合web标准的XHTML文档

摘要:
1.在XHTML文档的开头添加必需的XHTML元素DOCTYPEX。HTML文档开头的<DOCTYPE>标记告诉浏览器如何一致地解释和验证HTML文档。DOCTYPE声明是符合标准的网页的关键组件;除非XHTML文档确定了正确的DOCTYPE声明,否则文档中的标记和css将不会生效。2.所有标签必须具有相应的结束标签。必须关闭每个打开的标记。这个规则可以避免XHTML的混乱和麻烦。

  1、在XHTML文档的开始加上强制性的XHTML元素DOCTYPE

XHTML文档刚开始的<DOCTYPE >标签告诉浏览器如何解释及如何一致地校验HTML文档,DOCTYPE声明是一个兼容标准的网页的关键组成部分;除非XHTML文档确定了一个正确的DOCTYPE声明,否则文档中的标记和css都不会生效。并且文档中的DOCTYPE会影响大部分浏览器显示页面的办法;

ps:另外需注意的是:DOCTYPE声明不是XHTML文档本身的一部分,它不是一个XHTML元素,因此不必有一个关闭标记。

  2、所有的标记都必须要有一个相应的结束标记

每一个打开的标记都必须是关闭的,这个规则可以避免XHTML的混乱和麻烦。列如:如果你不关闭图像标记,在某些浏览就可能出现显示问题,用这种方法可以页面和你设计的一样显示。

ps:为使XHTML文档与现有的浏览器兼容,必须在"/"符号前加一个空格。

  3、所有标签的元素和属性的名字都必须使用小写

XHTML对大小写是敏感的,如<p>和<P>是不同的标签,所以所有标签名和属性名必须小写。

  4、所有的标记必须合理的嵌套

因为XHTML要求有严谨的结构,所以所有的嵌套都必须按照顺序,如<p><span></p></span>是不符合标准的。

  5、所有的属性都必须用双引号或单引号括起来

  6、把所有的<和&符号用实体编码表示

  7、给所有属性都赋一个值

XHTML规定所有的属性都必须有一个值,没有值得就重复本身,如<input type="checkbox" checked="checked"/>

  8、不要在注释中使用_

在XHTML文档中注释应是这种形式的<!--这是一个注释-->,<!--标识了注释的开始,而-->标识了注释的结束。-只能发生在XHTML注释的开头和结尾,也就是说,在内容中它们不在有效如<!--这是注释-------这是注释-->是无效的,用等号代替-<!--这是注释=======这是注释-->

  9、块级元素不能出现在内嵌元素内

由于块级元素定义的文本是换行的,而内嵌元素定义的文本是不换行的,所以如果把块级元素嵌套在内嵌元素内会引发混乱。

  10、对img元素,必须加上alt属性

为所有的图片添加alt属性,alt属性指定了当图片不能正确显示时就提供替换的文本。这样做对正常用户可有可无,但对纯文本浏览器和使用屏幕阅读机的用户来说就显得很有必要了,所以要为所有的img元素添加alt属性。

免责声明:文章转载自《如何编写符合web标准的XHTML文档》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇读写锁coding.net------WEBHOOK自动部署实战下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Pycharm Debug功能详解

左键单击代码编辑区域中的行号以在调试模式下运行代码:单击左上角工具栏上的调试图标(bug图)。方法2:在调试模式下运行后,1。代码编辑区域中的蓝色条是当前程序运行的位置,即c=add(a)应该运行,但尚未运行。2.代码编辑区域中的深红色条是当前程序设置的所有断点行。3.左下方是程序堆栈,进入fun()函数。4.右下方是可变显示区域1。跳转到当前断点(在断点之...

thinkphp3.2配置redis缓存和文件缓存

如果您将一些常用但不易更改的数据存储在缓存中,而不是每次检查数据库,则可以大大减轻数据库的压力。最近,由于项目的需要,您尝试了Redis,但后来使用tp3.2文件缓存直接进入主题:在config中添加以下代码。php:“DATA_CACHE_PREFIX”=˃“tp”,//缓存前缀“DATA_CCACHE_TYPE”=˃“Redis”,//高速缓存类型“Re...

Spring通过MimeMessageHelper发送邮件,中文附件名出现乱码解决办法

1.设置系统值system。setProperty(“mail.mime.split-longparameters”,“false”);2.在这里,定义创建对象时的编码格式(utf-8):MimeMessageHelper=newMimeMessageHelper(mes,true,“utf-8”);3.其次,添加附件时,附件名称为helper。需要定义代码...

grep多条件查找"与","或"

这里以jps命令为例jps查看全部的jvm进程"与"查找下图是所有jvm进程如果想查找256891ThriftServer服务用"与"查找可以理解为是条件查找命令:jps|grep-eer|grep-eT"或"查找方法一:grep-E'A|B'和grep-eA-eB方法二:egrep'A|B'方法三:awk'/A|B/'...

【问题】如何批量导出AI文件里内嵌的图片

截止目前为止,新版的AI里面没有直接可以批量导出内嵌图片的选项,手动一个个导出实在太麻烦了。有人说用Phantasm插件可以导出,但新版的找不到对应支持的插件版本,所以这里就不说了。这里介绍一种简单粗暴的方法。...

Android 帧动画使用

本文介绍使用AnimationDrawable类来实现动画效果。oneshot="false",表示让动画一直循环播放下去。.backgroundasAnimationDrawableani.start()当动画正在播放时,调用start()方法是不会影响当前播放的。˃android:oneshot="true",动画播放1次后就会自行停止并保持在最后一帧。...