1

在 Site.css 中有以下类:

input[type="textbox"].TextBoxAsLabel {
     background:#f2f3f3  !IMPORTANT;
}

想要覆盖 Edit.cshtml 中 TextBoxFor 字段的默认背景

@Html.TextBoxFor(model => model.ClientNumber, new {@readonly = "readonly", @class = "TextBoxAsLabel"})

它仍然使用默认的白色背景。我应该改变什么?

4

4 回答 4

6

没有input[type="textbox"]
你的意思是text

于 2013-10-23T14:18:05.313 回答
1

我意识到问题出在 CSS 文件的位置。现在在单独的styles.CSS中的代码是:

  .message-label {
    background-color: #f2f3f3;
  }

_Layout.cshtml 中引用了 Styles.css:

 <link href="@Url.Content("~/Content/styles.css")" rel="stylesheet" type="text/css" />

在 CHTML 中:

 @Html.TextBoxFor(model => model.ClientNumber, new {@readonly = "readonly", @class ="message-label"})

它有效!

于 2013-10-23T16:06:06.717 回答
1
input[type=text].TextBoxAsLabel
{
   background:#f2f3f3 !important;
}

如果某些东西覆盖然后使用内联

@Html.TextBoxFor(model => model.ClientNumber, new {@readonly = "readonly",
              @class = "TextBoxAsLabel", @style='background:#f2f3f3 !important'})
于 2013-10-23T15:14:55.067 回答
0

当您处理 CSS 时,您必须记住,应用于该元素的最后一件事是显示为最终产品的内容。

CSS 从上到下,最后是最终结果。

优先顺序

在此站点中,您似乎可以使用!Important!important

虽然它没有说明所有的大写字母

关于覆盖的另一个问题!important,答案是关于给元素一个 ID 或做一些<style>标签来实现这种风格。

添加

我假设最上面的代码集是你的 CSS。在 CSS 中你需要使用选择器,比如如果你有一个标签

<input type="button" id="btn1" />

然后你选择它

#btn1

你用身份证抓

如果你有

<input type="button" class="btnClass" />

btnClass然后你可以像这样选择所有按钮

input.btnClass
{
}

请试试这个

input.TextBoxAsLabel {
    background:#f2f3f3  !IMPORTANT;
}

或者

#ClientNumber input {
    background:#f2f3f3  !IMPORTANT;
}

我认为语法是正确的

这超级简单,如果这是答案,我们都将把头放在手中

CSS应该是

background-color:#f2f3f3 !Important

并不是

background:#f2f3f3 !Important

不确定这是否是问题的一部分,但我也会尝试[type=text]从选择器中删除。

于 2013-10-23T14:19:17.417 回答