Подтвердить что ты не робот

Asp.net-mvc Как изменить ширину Html.TextBox

как изменить ширину текстового поля в представлении asp.net-mvc View

Я хочу иметь эти поля рядом друг с другом, а текстовое поле состояния намного короче

            <p>
                <label for="city">City:</label>
                <%= Html.TextBox("city")%>
                <label for="state">State:</label>
                <%= Html.TextBox("state")%>
            </p>

EDIT:

Ни один из нижеприведенных ответов не работает для меня. Я заметил, что в site.css я вижу это:

fieldset p 
{
    margin: 2px 12px 10px 10px;
}

fieldset label 
{
    display: block;
}

fieldset label.inline 
{
    display: inline;
}

legend 
{
    font-size: 1.1em;
    font-weight: 600;
    padding: 2px 4px 8px 4px;
}

input[type="text"] 
{
    width: 200px;
    border: 1px solid #CCC;
}

input[type="password"] 
{
    width: 200px;
    border: 1px solid #CCC;
}

как переопределить это поведение для одного поля (текстовое поле)

4b9b3361

Ответ 1

Я бы использовал вспомогательную подпись, которая берет HTML-атрибуты и присваивает ей класс CSS. Затем вы бы использовали CSS для достижения желаемого внешнего вида.

 <%= Html.TextBox( "state", null, new { @class = "small-input" } ) %>

Ответ 2

<%= Html.TextBox("state", null, new { @style = "width: 300px;" })%>

Ответ 3

CSS

.yourcssclassname{width:50px;}

HTML

<%= Html.TextBox("city", null, new{@class="yourcssclassname"})%>

который должен это сделать... вы также могли бы явно отправить атрибут стиля, но классы css - лучший путь для выбора.

string.Empty представляет значение по умолчанию.

Изменить: см. сообщение tvanfosson

фиксированный ответ, поэтому он решает проблемы, упомянутые в комментариях.

Ответ 4

Вы можете использовать помощник TextBox, чтобы добавить любые произвольные атрибуты в текстовое поле. Например:


<%= Html.TextBox( "state", null, new { size = "10" } ) %>

Будет выглядеть примерно так:


<input type="text" name="state" size="10" />

Ответ 5

Если используется шаблон MVC по умолчанию, который поставляется с VS. Очевидно, что указание класса в атрибутах html текстового поля, похоже, не отменяет Site.css, однако встроенный стиль работает. Итак:

{@style= "width: 400px;"} 

будет работать, тогда как это не будет:

{@class="myclass"}