2012-06-27 93 views
2

在我看來,我有以下EditorFor<>顯示一個數字屬性。我想控制在結果標記中創建的文本框的寬度。如何將CSS應用於EditorFor字段?

呈現視圖時,文本框不是50px。它是300px。在CSHTML中指定的類editor-field-score似乎未應用。我使用開發人員工具檢查了Chrome,並且該類未添加到生成的標記中。

這是從我CSHTML:

<div class="editor-field"> 
    @Html.EditorFor(model => model.Animal, new { @class = "editor-field-score" }) 
    @Html.ValidationMessageFor(model => model.Animal) 
</div> 

這是我的CSS:

fieldset input[type="text"].editor-field-score { width : 50px; } 

此標記從Chrome中複製:

<div class="editor-field"> 
    <input class="text-box single-line" data-val="true" data-val-number="The field XXX must be a number." id="Animal" name="Animal" type="text" value=""> 
    <span class="field-validation-valid" data-valmsg-for="Animal" data-valmsg-replace="true"></span> 
</div> 

回答

2

嗯,你可以這樣做:

.editor-field input { 
} 

作爲您的選擇器。

否則,您可以使用TextBoxFor這確實允許HTML屬性如下設置:

@Html.TextBoxFor(model => model.Animal, new { @class = "editor-field-score" })