当我使用Visual Studio创建ASP.NET页面时,在查看页面源时,将忽略ASPX文件中的某些换行符。例如,以下ASPX代码
<head runat="server">
<title>My Page Title</title>
<meta id="MetaTag1" content="First item of information">
<meta id="MetaTag2" content="Second item of information">
<meta id="MetaTag3" content="Third item of information, containing longer description">
<meta id="MetaTag4">
<meta id="MetaTag5" content="Fifth item of information">
<meta id="MetaTag6">
<script type="text/javascript">
function button_pressed() {
document.getElementById('SubmitButton').style.borderWidth = '8px 5px 4px 7px';
[etc...]
当我查看页面源时,显示如下:
<head><title>
My Page Title
</title><meta id="MetaTag1" content="First item of information"><meta id="MetaTag2" content
="Second item of information"><meta id="MetaTag3" content="Third item of information, conta
ining longer description"><meta id="MetaTag4"><meta id="MetaTag5" content="Fifth item of in
formation"><meta id="MetaTag6">
<script type="text/javascript">
function button_pressed() {
document.getElementById('SubmitButton').style.borderWidth = '8px 5px 4px 7px';
[etc...]
ASPX文件中的大多数换行符和空格也在页面源中,但在某些情况下会忽略换行符(即使是</title>
和第一个<meta>
之间的双重换行符标签)。在其他情况下,在页面源(或至少一个案例 - <title>
标记)中可以看到ASPX文件中没有的空格。
这似乎是ASP.NET解释ASPX文件的一个问题,而不是浏览器或Visual Studio,因为页面源在FireFox,IE和Chrome中看起来相同,并且编辑ASPX文件文本编辑器而不是VS并没有什么区别。
我想知道为什么ASPX文件中的大部分空格会被忽略,因为它的大部分内容确实是HTML源代码(我只展示了一个代表性的示例,专注于有问题的部分,但大多数页面源的其余部分具有很大程度上对应于ASPX的格式。
但更重要的是,我想知道如何在ASPX文件中添加换行符,这将使页面源更具可读性,但不会在网页上呈现。
一些不太理想的解决方案:
<br />
并不是我想要的。虽然这确实在页面源中添加了换行符,但它会在页面上呈现,在顶部添加无用的空格。
。这样做会更好,因为它不会向呈现的页面添加空格,但它会在页面源中明确显示,使其看起来混乱。<meta>
标记中,并在内容属性中的各个项目之间添加

。如果我这样做,信息会垂直排列,并且

未显示。虽然这是最需要阅读的部分,但这仅适用于属性值的内容。此外,对于某些<meta>
,内容在ASPX中显式设置,而其他内容由代码隐藏设置,因此这样做会使事情变得复杂。答案 0 :(得分:-1)
&#34;但更重要的是,我想知道如何在ASPX文件中添加换行符,这将使页面源更易读,但不会在网页上呈现。&#34;
只要您的元素的样式具有未设置为保留空格的white-space属性,您的aspx中的空格(例如换行符)就不会在浏览器中显示。