HTML标记中的字符大小写

时间:2010-09-21 01:59:36

标签: php html caching case-sensitive

html标签中字符大小写的规则是什么?

我有一种情况,我需要在我的网站上强制禁止缓存。我一直在使用所有html标签和属性的所有小写字母(在它不区分大小写的印象下)。到目前为止,我还没有发布任何文件。

我发现以下适用于IE7:

<META HTTP-EQUIV="Expires" CONTENT="-1">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

虽然这不是:

<meta http-equiv="Expires" content="-1">
<meta http-equiv="Pragma" content="no-cache">

仅供参考我使用PHP并且还包含以下内容,但如果没有HTML元标记,它似乎也无法运行:

header( "Expires: Mon, 20 Dec 1998 01:00:00 GMT" );
header( "Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT" );
header( "Cache-Control: no-cache, must-revalidate" );
header( "Pragma: no-cache" );
header("Content-Type: text/html; charset=UTF-8");

编辑(已添加):我们有以下文档类型(我必须承认,我不知道这意味着什么或它的相关性)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

2 个答案:

答案 0 :(得分:1)

您是否尝试过其他版本的IE? XHTML is时,HTML不区分大小写。这是W3schools says about HTML

  

HTML提示:使用小写标记

     

HTML标记不区分大小写:

  与

相同。许多网站   使用大写HTML标记。

     

W3School使用小写标签,因为   万维网联盟(W3C)   推荐HTML 4中的小写,和   将来需要小写标签   (X)HTML的版本。

来自freedom_razor的帖子codingforums表明IE7不喜欢小写元标记。也许您可以使用javascript来检测浏览器并相应地设置元标记?

答案 1 :(得分:0)

嗯...... META标签根本不应该真正起作用,因为你已经发送了真正的HTTP标头,它应该覆盖指定为元标签的标头(HTTP-EQUIV就是这个名字所说的 - 替代HTTP标头不可用时。)

另外......在HTTP标题中,您说“Expires”=“Mon,20 Dec 1998 01:00:00 GMT”,但在元标记中指定“Expires”=“ - 1”。所以你不确定你想要的Expires值是什么?

除此之外:缓存控制应仅使用HTTP标头实现 - 您还可以控制图像缓存的方式(图像文件中没有元标记)。