Форматирование Razor-MVC3

#asp.net-mvc

#asp.net-mvc

Вопрос:

Я использую это для отображения метки и значения для метки из контроллера действий.

 @Html.Label("Label to be Displayed:"):
  @Html.Action("MyAction", "MyController", new { id =Model.id })
  

Но метка отображается в одной строке, а значение для метки — в другой строке.

Что я должен сделать, чтобы отобразить метку и значение в одной строке;

Вот так:

Метка, которая будет отображаться: значение из ActionController

Комментарии:

1. как выглядит результирующий HTML-код?

2. Покажите свой html, и тогда мы сможем рассказать вам, как лучше всего стилизовать ваши HTML-помощники для его достижения.

Ответ №1:

Короткий ответ, добавьте это в свой css.

 label {
    float: left;
    width: 10em;
    margin-right: 1em;
}
  

Длинный ответ:

http://designfestival.com/position-text-labels-on-forms-using-css/

Старайтесь не использовать таблицы для макетов.

Ответ №2:

Попробуйте это. Вы также можете использовать div с указанием классов

 <table>
 <tr>
   <td>@Html.Label("Label to be Displayed:"):</td>
   <td>@Html.Action("MyAction", "MyController", new { id =Model.id })</td>
 </tr>
</table>
  

Комментарии:

1. Использование таблицы для такой задачи не является решением. Конечно, вы можете, но это не тот путь.

Ответ №3:

Я предполагаю, что Html.Action это приводит к какому-то HTML-коду, который вы оформили как display: block; , или это блочный элемент, который выходит из действия. Если Action просто возвращает текст, это не должно вызвать никаких проблем.

Комментарии:

1. @Pero: тогда вам также придется стилизовать это, или не используйте метку текста.

Ответ №4:

Попробуйте выполнить следующее:

 @Html.Label("Label to be Displayed:")
@Html.Action("MyAction", "MyController", new { id =Model.id },new {@style= "float:right"})
  

Ответ №5:

Используйте для этого таблицу HTML. В MVC вы можете легко управлять дизайном с помощью HTML. Пожалуйста, попробуйте следующий код.

 <table>
 <tr>
   <td>@Html.Label("Label to be Displayed:"):</td>
   <td>@Html.Action("MyAction", "MyController", new { id =Model.id })</td>
 </tr>
</table>
  

Комментарии:

1. Использование таблицы для такой задачи не является решением. Конечно, вы можете, но это не тот путь.

2. @Томас Янссон .. Могу ли я узнать, какое лучшее решение для этого, и оно должно работать во всех сценариях?

3. @alok-dida, трудно сказать, поскольку вы не видите окружающий html. Но я бы пошел на <div class="someclass">@Html.Label("label to be displayed:"): <span class="actionspan">@Html.Action(...)</span></div>