HTML:href语法:可以在文件名中有空格吗?

一直以来我的做法是,当我使用图像时,我将它们命名为walls_icobu_hover

所以当我给path他们走

 <img src="images/walls_ico.ico" /> <img src="buttons/bu_hover.png" /> 

直到现在,当我在用户上传文件的项目…

我想知道是否可以在文件和文件夹名称之间有空格

 <img src="buttons/bu hover.png" /> 

src属性应该包含一个有效的URL 。 由于url中不允许空格字符 ,因此您必须对其进行编码 。

你可以写:

 <img src="buttons/bu%20hover.png" /> 

不是

 <img src="buttons/bu+hover.png" /> 

因为,正如DavidRR在他的评论中正确地指出的那样,编码空格字符为+只在URL的查询string部分有效,而不在path本身中。

引用HTML5返回Frederic不允许空格:

http://www.w3.org/TR/html5/links.html#attr-hyperlink-href

a和area元素上的href属性的值必须是可能被空格包围的有效URL。

“有效的URL”的定义指向: http : //url.spec.whatwg.org其中定义了URL代码点https://url.spec.whatwg.org/#url-code-points

URL代码点是ASCII字母数字,“!”,“$”,“&”,“'”,“(”,“)”,“*”,“+”,“,”,“ – ”,“。 “,”“,”“,”“,”“,”“,”“,”_“,”〜“和代码点U + 00A0至U + D7FF,U + U + 10000到U + 1FFFD,U + 20000到U + 2FFFD,U + 30000到U + 3FFFD,U + 40000到U + 4FFFD,U + 50000到U + FDF​​F,U + FDF​​0到U + U + 5FFFD,U + 60000到U + 6FFFD,U + 70000到U + 7FFFD,U + 80000到U + 8FFFD,U + 90000到U + 9FFFD,U + A0000到U + AFFFD,U + B0000到U + U + C0000至U + CFFFD,U + D0000至U + DFFFD,U + E1000至U + EFFFD,U + F0000至U + FFFFD,U + 100000至U + 10FFFD。

规范然后在parsingalgorithm的各个部分使用术语URL代码点:

如果c不是EOF代码点,不是URL代码点,而不是“%”,则parsing错误。

为scheme,权限,相对path,查询状态和片段状态:所以整个URL。

如果你正在使用PHP

然后找出这个代码

 $result = mysqli_query($con,$sql); //echo $ip."<br />";REGEXP //echo $name."<br />"; echo "<table border=2px style='border-radius=20px;' align=center><tr> <th>Document ID</th> <th>Document Name Type</th> <th>Download Documents</th> </tr>";//<th>Project Document Type</th> while($row = mysqli_fetch_array($result)) { $path1=$row['FOLDERNAME'] .'/'. $row['FILENAME'] .'.'. $row['DOCTYPE']; $path=str_replace(" ", '%20', $path1); echo "<tr>"; echo "<td>" . $row['DocID'] . "</td>"; // echo "<td>" . $row['PROJDOCTYPE'] . "</td>";Thank you. Your Apple ID is now ready for use. echo "<td>" . $row['DOCNAME'] . "</td>"; echo '<td><a href=Tender/'.$path.'>'.$row['DOCNAME'].'</a></td>'; echo "</tr>"; } echo "</table>"; mysqli_close($con); 
 <body> <img src="file:///C|/Documents and Settings/All Users/Documents/My Pictures/Sample Pictures/Water lilies.jpg" </body> 

只有当您在本地主机上工作时才允许使用空格