2012-06-27 4 views
2

제 생각에는 숫자 속성을 표시하려면 다음과 같은 EditorFor<>이 있어야합니다. 나는 결과 마크 업에서 생성 된 텍스트 상자의 너비를 제어하려고합니다.EditorFor 필드에 CSS를 어떻게 적용합니까?

보기가 렌더링 될 때 텍스트 상자는 50 픽셀이 아닙니다. 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; } 

이 마크 업 크롬에서 복사 :

<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 { 
} 
선택기로

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

그렇지 않으면, 당신은이 같은 HTML 속성의 설정을 허용 않습니다 TextBoxFor을 사용할 수 있습니다

관련 문제