在MVC中更改控件和html的样式
使用最新版本的MVC,我想更改项目的样式。通过阅读,我认为我可以使用以下代码:在MVC中更改控件和html的样式,html,asp.net,asp.net-mvc,Html,Asp.net,Asp.net Mvc,使用最新版本的MVC,我想更改项目的样式。通过阅读,我认为我可以使用以下代码: @Html.DisplayNameFor(model => model.Adresse, new { style="width:1000px;" }) 但它不会改变任何元素的样式。如何修复此代码?除了一些注释之外,答案基本相同 使用以下命令: @Html.TextBoxFor(p=>p.publisher[0]。发布名称,新{@style=“width:1000px”}) 注意:和1000px之间的空格。如果
@Html.DisplayNameFor(model => model.Adresse, new { style="width:1000px;" })
但它不会改变任何元素的样式。如何修复此代码?除了一些注释之外,答案基本相同 使用以下命令:
@Html.TextBoxFor(p=>p.publisher[0]。发布名称,新{@style=“width:1000px”})
注意
:
和1000px
之间的空格。如果样式中只有一个属性,请避免使用分号。只要多加一些注释,就可以得到几乎相同的答案
使用以下命令:
@Html.TextBoxFor(p=>p.publisher[0]。发布名称,新{@style=“width:1000px”})
注意
:
和1000px
之间的空格。如果样式中只有一个属性,请避免使用分号。通常,这是通过使用htmlAttributes
属性来实现的,该属性只是一个包含首选样式的匿名对象,就像您在示例中使用的那样
然而,这里的问题是,您当前正试图将其与displayname for
帮助程序一起使用,而不是呈现实际元素的帮助程序,例如TextBoxFor
,textraeafor
或类似的帮助程序
DisplayNameFor
helper本身只会呈现目标属性的实际名称。通常这是通过使用htmlAttributes
属性来实现的,该属性只是一个包含首选样式的匿名对象,就像您在示例中使用的那样
然而,这里的问题是,您当前正试图将其与displayname for
帮助程序一起使用,而不是呈现实际元素的帮助程序,例如TextBoxFor
,textraeafor
或类似的帮助程序
DisplayNameFor
helper本身只会呈现目标属性的实际名称。我认为DisplayNameFor
不会呈现任何HTML元素,因此向控件添加HTML属性将不起作用
我会用span
包装您的控件,并添加一个CSS类,然后将该类添加到样式表中,您可以在那里编写和管理样式
大概是这样的:
@Html.DisplayNameFor(model=>model.adrese)
然后在CSS样式表中添加新类:
.display-name{
display:inline-block;
border: 1px solid #ff0000;
background-color:#eee;
font-size:15px;
/*add more styles ...*/
}
我认为
DisplayNameFor
不会呈现任何HTML元素,因此将HTML属性添加到控件将不起作用
我会用span
包装您的控件,并添加一个CSS类,然后将该类添加到样式表中,您可以在那里编写和管理样式
大概是这样的:
@Html.DisplayNameFor(model=>model.adrese)
然后在CSS样式表中添加新类:
.display-name{
display:inline-block;
border: 1px solid #ff0000;
background-color:#eee;
font-size:15px;
/*add more styles ...*/
}
DisplayNameFor function,Sorry为什么不使用
@LabelFor()
?我同意:
和1000px
之间的间距看起来更好,但我不认为这会阻止样式的渲染<编码>宽度:1000px编码>和宽度:1000px代码>与样式属性相同,因此样式属性不需要@style
。@
实际上只用于类
属性,因为类
是一个保留字。下面是我在我的一个应用程序中使用的一个示例:@Html.PasswordFor(m=>m.@params[0]。数据[0]。passwd,new{@class=“form control”,placeholder=“Mot de Passe”,@style=“color:darkgray;width:200px;”)
这实际上效果很好。DisplayName用于函数,所以为什么不使用@LabelFor()
?我同意:
和1000px
之间的间距看起来更好,但我不认为这会阻止样式的渲染<编码>宽度:1000px编码>和宽度:1000px代码>与样式属性相同,因此样式属性不需要@style
。@
实际上只用于类
属性,因为类
是一个保留字。下面是我在我的一个应用程序中使用的一个示例:@Html.PasswordFor(m=>m.@params[0]。数据[0]。passwd,new{@class=“form control”,placeholder=“Mot de Passe”,@style=“color:darkgray;width:200px;”)
这实际上可以正常工作。如果您使用的是displayname for
,那么您可能需要确保[Display(Name=“Name”)]
属性存在于您的模型属性adrese
中,我可以改变它的样式吗?然后你可以给它一个CSS类,然后将这个类添加到控件中,并在样式表中为这个类编写样式“给它一个CSS类”,我在哪里添加CSS,以及在@zgood中到底写什么?我继续回答。请注意,如果您对此方法有任何疑问,如果您使用的是displayname for
,那么您可能需要确保[Display(Name=“Name”)]
属性存在于您的模型属性adrese
中,我可以改变它的样式吗?然后你可以给它一个CSS类,然后将这个类添加到控件中,并在样式表中为这个类编写样式“给它一个CSS类”,我在哪里添加CSS,以及在@zgood中到底写什么?我继续回答。如果您对这种方法有任何疑问,请发表评论。是的,这基本上就是答案,我也尝试使用width
,但我意识到正确的MVC样式属性是minwidth
,但这只是一个细节。是的,这基本上就是答案,我还试图使用width
,但我意识到正确的MVC样式属性是minwidth
,但这只是一个细节。