防止线路中断后@ Html.LabelFor在ASP.NET MVC 4使用剃须刀(Prevent

2019-09-18 08:41发布

这里是我的代码。

@using (Html.BeginForm()) {
@Html.ValidationSummary()

<fieldset>
    <legend>Registration Form</legend>
    <ol>
        <li>
            @Html.LabelFor(m => m.FirstName)
            @Html.TextBoxFor(m => m.FirstName)
        </li>
    </ol>
 </fieldset>
}

从上面的代码中,标签和文本框是在单独的行。 我想将它们合并起来在同一行,所以我可以有类似...

@Html.LablFor(m => m.FirstName): @Html.TextBoxFor(m => m.FirstName)

应该结束了看起来像姓:_ __ _ __ _

提前致谢。

Answer 1:

一定有什么不对您的CSS,因为<label><input>都是行内元素。 如果你的CSS被他们当作块级元素,他们将出现在不同的行的唯一原因是,或者如果他们不适合在同一行的内容。

演示中的jsfiddle: http://jsfiddle.net/tSFtJ/



Answer 2:

下面是我做的,使这项工作对我来说(下面的代码片段)。
视图模型

<!-- language: c# -->
[DataType(DataType.EmailAddress)]
[Display(Name = "LabelEmail", ResourceType = typeof(Resources.GeneralResource))]
public string EmailAddress { get; set; }

View.cshtml

<!-- language-all: lang-html -->
<div>
    @Html.LabelFor(m => m.EmailAddress, new { style="display:inline;"})
    @Html.DisplayFor(m => m.EmailAddress)
</div> 

最重要的一点是:
新{风格= “显示:内联;”}
在LabelFor(..)。
奇迹般有效。



文章来源: Prevent Line Break After @Html.LabelFor In ASP.NET MVC 4 Using Razor