首页 > 开发 > HTML > 正文

shtml包含文件的BUG?

2020-10-03 17:39:15
字体:
来源:转载
供稿:网友

今天在调试程序时发现一个很奇怪的现象,.shtml的文件在使用<!--#include file="x.htm"-->包含x.htm氖保?岢缘.htm的最后几个字符!

为了验证这一现象,特意在本机建了两个文件,1.htm和1.shtml。
1.htm内容为:<a href="http://www.CuoXin.com">ITlearner</a>
1.shtml内容为:<!--#include file="1.htm"-->
浏览1.shtml,查看源文件为:<a href="http://www.CuoXin.com">ITlearner
1.htm中末尾的"</a>"不见了!

修改1.htm为:<p><a href="http://www.CuoXin.com">ITlearner</a></p>
浏览1.shtml,查看源文件为:<p><a href="http://www.CuoXin.com">ITlearner</a>
1.htm中末尾的"</p>"不见了!

修改1.htm为:<div><a href="http://www.CuoXin.com">ITlearner</a></div>
浏览1.shtml,查看源文件为:<div><a href="http://www.CuoXin.com">ITlearner</a></div>
一切正常!!!

:(

修改1.htm为:<li><a href="http://www.CuoXin.com">ITlearner</a></li>
同样正常!

修改1.htm为:<b><a href="http://www.CuoXin.com">ITlearner</a></b>
浏览1.shtml,查看源文件为:<b><a href="http://www.CuoXin.com">ITlearner</a>
1.htm中末尾的"</b>"又不见了!

难道是末尾是4个字符(类似</p>)时就会被吃掉,而其它字符就不会受影响?

再试:

修改1.htm为:<li><a href="http://www.CuoXin.com">ITlearner</a><b>
"<b>"不见了!

修改1.htm为:<li><a href="http://www.CuoXin.com">ITlearner</a><br>
"<br>"不见了!

修改1.htm为:<li><a href="http://www.CuoXin.com">ITlearner</a><br/>
正常!!!

修改1.htm为:<li><a href="http://www.CuoXin.com">ITlearner</a>-
正常!!!

测试结论:末尾带<开头的小于5个字符的字符串会在被包含后吃掉!

又试一下用<!--#include virtual="/1.htm"-->包含,同样如此:(

不知这是.shtml包含文件的一个小bug,还是我自己那里搞错了:(

最终,只能将1.htm改为<a href="http://www.CuoXin.com">ITlearner</a> (后面加了一个空格),这样才能正常显示。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表