0

下面控制器的输出在 IE9 中呈现不带换行符 如何强制浏览器在创建时在单独的行中呈现文本?

.NET 3.5 中使用 ASP.NET / Mono MVC2

    public ActionResult Index()
    {
        var sb = new StringBuilder();
        sb.AppendLine("Line1");
        sb.AppendLine("Line2");
        return new ContentResult() { Content = sb.ToString() };
    }
4

3 回答 3

2

这取决于你想做什么。浏览器忽略简单的换行,因为C#它是\r\n. 使用<br />(新行的html标签)或尝试<pre>标签:

<pre>
   Line 1
   Line 2
</pre>

演示:http: //jsfiddle.net/CQeTX/

于 2013-03-02T16:53:19.983 回答
1

使用 时AppendLineStringBuilder追加换行符。如果要在浏览器中显示换行符,则必须添加<br/>

sb.AppendLine("Line1<br/>");
sb.AppendLine("Line2<br/>");

或者

sb.Append("Line1<br/>");
sb.Append("Line2<br/>");
于 2013-03-02T15:50:40.287 回答
0

如果它是页面上 html 的一部分

    sb.AppendLine("Line1<br />");

或者如果它在代码中

    sb.AppendLine("Line1\n");
于 2013-03-02T15:50:59.477 回答