ViewBag не показывает новую строку
Я хочу показать текст в двух отдельных строках для заголовка страницы:
@section featured {
<section class="featured">
<div class="content-wrapper">
<hgroup class="title">
<h1>@ViewBag.Message</h1>
</hgroup>
</div>
</section>
}
У меня есть следующий код в контроллере:
public ActionResult Login(string returnUrl)
{
StringBuilder sb = new StringBuilder();
sb.Append("Web Security Administration Portal");
sb.AppendLine();
sb.AppendLine();
sb.Append("Services, Inc. - SSOAdmin v2.00");
ViewBag.ReturnUrl = returnUrl;
ViewBag.Message = sb.ToString();
return View();
}
ViewBag
не показывает новую строку. При просмотре исходного кода сгенерированного HTML выглядит так, что две строки находятся на отдельных строках, но при отображении страницы строки не разделяются.
Я пытался использовать sb.Append(Environment.NewLine)
а также sb.Append(Text{0}, Environment.NewLIne)
также. Тут не помогает.
Что здесь может быть не так?
1 ответ
Environment.NewLine
помещает текст в несколько строк в создаваемом HTML. Тем не менее, пробелы, такие как новые строки, игнорируются большинством элементов HTML. Вы должны добавить <br />
где вы хотите новые строки.
Кроме того, вы можете изменить это поведение, добавив see к включающему элементу, который добавляет:
white-space: pre-wrap;
Лучше всего заставить это работать, чтобы ваш ViewBag
быть завернутым в <p>
,