ASP.Net MVC TextAreaFor无法改变宽度
本文关键字:改变 Net MVC TextAreaFor ASP | 更新日期: 2023-09-27 18:13:47
我正在与ASP合作。Net MVC的第一次,我试图设置一个文本区域的宽度。
这应该(而且很可能)真的很简单,但是无论我尝试什么,区域的宽度都不会改变。
到目前为止,我已经尝试了以下操作:
@Html.TextAreaFor(m => m.RequestDetails, 10, 10, htmlAttributes: new {@class = "form-control", })
@Html.EditorFor(m => m.RequestDetails, new { htmlAttributes = new { @class = "form-control" } })
@Html.TextAreaFor(m => m.RequestDetails , new { @class = "form-control", @cols = 80, @rows = 10 })
我可以改变行数没有问题。
最初我认为这是由于引导和网格系统,所以我把它从网格中拿出来,并重新开始与上述所有并得到同样的问题。
I have look here:
asp.net-mvc如何改变宽度Html。文本框
TextAreaFor不能设置宽度
asp.net-mvc如何改变宽度Html。文本框
和其他一些Stack问题以及我认为可以工作的所有内容都没有。
这个属性的ViewModel是
[Display(Name = "What is required")]
[DataType(DataType.MultilineText)]
[StringLength(4000, MinimumLength=50, ErrorMessage="Please provide more information about your requirements")]
public string RequestDetails { get; set; }
我希望有这个跨度的div,它将进入的宽度,所以会非常感谢一些帮助。
对我来说,最后的手段是使用HTML控件而不是Razor,并以这种方式获取数据,但我确实相信这应该很容易实现我想要的。只是我做错了。由于
西蒙这里的问题是处理max-width
。
这是正确的实现:
@Html.TextAreaFor(m => m.RequestDetails, 10, 10, htmlAttributes: new {@class = "form-control", })
你所要做的就是给这个文本区域另一个类名然后在你的CSS中设置这个类的max-width,就像这样:
剃须刀/HTML
@Html.TextAreaFor(m => m.RequestDetails, 10, 10, htmlAttributes: new {@class = "form-control width-textarea", })
CSS .width-textarea{
max-width: /* whatever you please */ !important
}
让我知道这是否有帮助!
<style>
.areaWidth
{
width: 100px;
}
</style>
@Html.TextAreaFor(m => m.RequestDetails, new { @class = "form-control areaWidth" })