通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 my小屋
联系我们
设为首页
加入收藏

 

qq,asp,php,jsp,xml,sql,.net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 网络赚钱 | 网站地图 | 广告服务 | 服务
当前位置:首页>>站长club>>建站经验>>正文 新版上线![旧版]
注:打开慢时请稍等
web标准发展建议与实例(5)

http://www.iyit.net  日期:2006-5-8 14:37:03  来源:中国站长学院  点击:
参加讨论

5. (x)html

使用html4.01是可以制作出现代的、结构化的、兼容标准的站点的。然而,为了做到向整洁的语义化的代码的转变,并且为xml和未来的其他标记语言做好准备,建议大家使用xhtml1.0 strict来创建新的站点,本文中的例子用的就是xhtml1.0 strict。

xhtml 1.0 是以xml 1.0对html 4的改进,它的发展,以用来代替html。xhtml 1.0 strict(这是我一直所倡导的)不支持表现类的标记(html 4.01其实也不支持,但是现在我们讨论的是xhtml)。正因为此,xhtml1.0 strict 就促使了表现与结构的分离。

xhtml 1.1(xhtml的最新版)从技术上说,使用起来有一些复杂。因为规定中声明xhtml 1.1的文档应当使用mime类型 application/xhtml+xml, 不应当被看作text/html。 并不是严格的禁止使用text/html, 只是不建议使用。 另外一方面,xhtml 1.0 (应当使用 application/xhtml+xml)同样可以使用mime类型 text/html, 如果它是可兼容的html。w3c的注解xhtml media types 中包括了mime类型(w3c推荐使用的类型)的概要。

不幸的是,一些老的浏览器包括ie不能识别mime类型 application/xhtml+xml, 并且会终止显示源代码,甚至会干脆拒绝显示整个文档。

如果你想使用application/xhtml+xml, 你应当让服务器检验一下读取文档的浏览器是否支持mime类型,如果能,就使用绻荒埽褪褂胻ext/html。

如果你使用的是php作为服务器端的脚本,那么下面的这段脚本能够让你的文档针对不同的浏览器使用不同的mime类型。

<?php if (stristr($_server[http_accept], "application/xhtml+xml") || stristr($_server["http_user_agent"],"w3c_validator"))
{ header("content-type: application/xhtml+xml; charset=iso-8859-1");
header("vary: accept");
echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n");
} else { header("content-type: text/html; charset=iso-8859-1");
header("vary: accept"); } ?>

这个脚本是检测是否用户代理发送了一个包含“application/xhtml+xml”的accept http头,或者如果用户代理是w3c html校验器(不会发送合适的accept http头的,但是它依然支持 application/xhtml+xml)。如果上面检测的回答是肯定的,文本将被看作 application/xhtml+xml。那些浏览器也会收到一个xml的声明。对于另外的一些浏览器(包括ie的是所有版本),文档都将被看做 text/html。在文档中也没有添加额外的xml声明,因为如果添加的话,会使ie/win转化到我们所不希望的quirks模式。

在content-type头部之后,一个被更改过的头部,将被发送到中间的缓存中(比如一些代理服务器),用来告诉他们文档的内容类型随着客户端对文档的请求而改变。

如果想了解更多的php检测脚本, 请参考serving up xhtml with the correct mime type. 那个脚本对请求客户端的q-rating(它声明了更够很好的支持某种mime类型)进行了考虑,在发送text/html 文档给不支持 application/xhtml+xml的客户端之前,把xhtml转化成html 4。

下面的是一个相似的脚本,针对asp(vbsscript):

<% if instr(request.servervariables("http_accept"), "application/xhtml+xml") > 0 or instr(request.servervariables("http_user_agent"), "w3c_validator") > 0 then response.contenttype = "application/xhtml+xml" response.write("<?xml version=""1.0"" encoding=""iso-8859-1""?>" & vbcrlf); else response.contenttype = "text/html" end if response.charset = "iso-8859-1" %>

值得注意的是,当一个文档的mime type是application/xhtml+xml时,一些浏览器(像mozilla)是不会显示包含错误的文档的。这在开发过程中是一件好事,但是对于那些刚刚更新完站点且不是xhtml专家的人来说,就会出现一些问题,除非您能确保所有的代码都是规范的。如果出现了这种问题,您可以考虑使用html 4.01 strict来代替xhtml。

下面列出了一些在使用xhtml 1.0 strict中需要特别注意的地方:

  • 永远使用小写字母,让引号伴随者属性: 所有元素和属性的名字都必须使用小写,所有属性值必须使用双引号。

    错误: <a href="index.html" class=internal>
    正确: <a href="index.html" class="internal">

  • 关闭所有的元素:在html中一些元素没有必要被关闭。当下一个元素开始的时候,上一个元素就自动被关闭。xhtml中是不允许这样的。所有元素都必须被关闭,即使其中没有内容(如 <img>)

    错误: <li>item 1
    正确: <li>item 1</li>

    错误: <p>lorem ipsum dolor sit amet, consectetuer adipiscing elit.
    正确: <p>lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p>

    错误: <br>
    正确: <br />

    错误: <img src="http://www.iyit.net/files/beyondpic/2006-5/8/065814365927565.jpg" alt="">
    正确: <img src="http://www.iyit.net/files/beyondpic/2006-5/8/065814365927565.jpg" alt="" />

  • 属性不能被缩减: 在html里,一些属性可以被缩减。而xhtml则不允许这样做。

    错误: <input type="checkbox" id="checkbox1" name="checkbox1" checked>
    正确: <input type="checkbox" id="checkbox1" name="checkbox1" checked="checked" />

  • 不要使用被排斥的元素: 一些元素和属性在html 4.01 transitional和xhtml 1.0 transitional是被允许的,而在xhtml 1.0 strict下则不被支持(还有in html 4.01 strict)。比如<font>、<center>、 alink、align、width、 height (对于某些元素)和 background。



编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:web标准发展建议与实例(4)
下一篇:web标准发展建议与实例(6)
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
最新更新 热点排行 推荐新闻
行业网站设计心得
网站导航理论与实践
企业域名选择的原则和技巧
在网页编辑常用表现的实现方法
网站设计的思考(6)——首页的设计
行业网站设计心得
网站导航理论与实践
企业域名选择的原则和技巧
在网页编辑常用表现的实现方法
网站设计的思考(6)——首页的设计
网站设计的思考(5)——确定网站的整体
网站设计的思考(4)——确定网站的目录
网站设计的思考(3)——确定网站的栏目
网站设计的思考(2)——定位网站ci形象
网站设计的思考(1)——定位网站主题和
java数据类型转换
网站优化的十大奇招妙技
你的网站为什么不能帮你赚钱之二
网页应该怎样设计才能被百度有效收录
你的网站为什么不能帮你赚钱之一
新开放qq免费挂级网站
免费在qq上看在线电影电视听音乐
免费把qq炫铃设为本机qq的系统提示音
qq珊瑚虫外挂4.0版本发布!
腾讯qq调整升级条件不再诱发网民“通宵
优秀公益广告作品欣赏(8)
java数据类型转换
流金岁月!cpu历史上最难忘的十个第一
qq挂机的n种快速方法
asp自动解压rar文件
巧用photoshop图案工具
用photoshop制成浪漫的“珍珠项链”
第二十章 开发delphi对象式数据管理功
sql简明教程(1)
vbscript和javascript互相调用 
jsp教程(四)-jsp actions的使用
操作系统被入侵后的修复过程
五一别忘电脑防毒 养成良好上网习惯
google对ie浏览器将捆绑搜索功能表担忧
新版上线,今日正式开通!!!
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
copyrights © 2004-2006 iyit.net all rights reserved.
网站合作、广告联系qq:147007642、466949678
易特网络技术 点击这里给我发消息