标题标签上的空格使HTML验证程序出错

时间:2019-01-01 00:31:44

标签: php html localhost

我的标题标签上有空格时,由于未知原因,我有一个带有php代码的html页面,我在https://validator.w3.org上遇到错误

例如我的头衔是:

<title>My Website</title>

我所有的href标签都获得带有空格的标题,例如:

<link href="./My Website_files/abc.css" type="text/css" rel="stylesheet">

这是在本地主机上运行网站之前的标题:

<link href="abc.css" type="text/css" rel="stylesheet" />

是否可以在标题标签中添加透明字符?

2 个答案:

答案 0 :(得分:4)

我不确定所见即所得的软件是由哪个软件生成的,但是..

 <link href="./My Website_files/movie.css" type="text/css" 
rel="stylesheet">

应该看起来像这样:

    <link href="//www.my-real-domain.TLD/my-uri/movie.css" type="text/css" 
rel="stylesheet" >

或者这个:

 <link href="http://My-Website_files/movie.css" type="text/css" 
rel="stylesheet" >

甚至这个:

    <link href="http://localhost/MyWebsite_files/movie.css" type="text/css" 
rel="stylesheet" >

与此块相同

    <link rel="shortcut icon" 
href="http://localhost/movie/%20https://drive.google.com/uc? 
id=1TIDA5zL8vIMIGqRzgYYG5axz4Ovldiyh" type="image/gif">

(您是否真的有一个名为%20https://drive.google.com/uc? id=1TIDA5zL8vIMIGqRzgYYG5axz4Ovldiyh的本地文件夹/路径,其中包含空格和全部?或者您试图从CDN包含它?)

和该块

 <img src="./My Website_files/banner.png" alt="My Website">

重点是,您的URI / URL的结构很危险,将来很可能会给您带来进一步的问题。您基本上是链接到local路径/ URI,并且这些路径可能包含空格/非法字符或甚至不存在。

令人惊讶的是,您跳入验证器而没有先解决这些问题-因为通常不这样做-您对这些模式的最大问题不是代码验证器。还可以考虑学习如何阅读和使用验证器输出。 (FAQ

您可以阅读有关绝对this和相对path的许多问题(例如URI),也可以阅读{{3}中有关安全使用URLthis post的更多信息}},但问题是,您的文件链接(而不是<title>标记)是您的问题-而且比验证程序问题还要深远-这是一种错误的做法,可能并会在应用程序中产生其他问题部署后的未来。

如果要包含PHP代码,则它可能会有所帮助,因为php具有一些功能来帮助URL / URI,例如urlencode()等。但是恕我直言,这里的问题更为原始,并且与链接文件并了解基本操作,这使得通过简单的代码调整或魔术功能很难回答这个问题。甚至考虑到您将错误归咎于<title>标签这一事实。

我的建议是对pathrelativeabsolutecanonicalHTMLJS或{ {1}}和不同的OS等对于将来的价值将大大提高,然后再修复这部分代码本身。

附言 (那就是说,我确信,在理解了这些基本实践之后,您实际上可以使用固定的代码来回答自己的问题:-))

答案 1 :(得分:0)

尝试在空间所在的位置添加%20