RequiredFieldValidator - 如何摆脱默认的红色字体颜色

时间:2008-10-20 20:27:11

标签: asp.net asp.net-2.0 validation

我似乎无法更改所需字段验证器的默认颜色。在源中它是:

<span class="required">*</span>
<asp:RequiredFieldValidator ID="valReq_txtTracks" runat="server"
    ControlToValidate="txtTracks"
    Display="Dynamic" />

以下是我在.skin文件中的内容:

<asp:RequiredFieldValidator runat="server" 
    CssClass="error-text"
    ErrorMessage="required" />

在渲染的源代码中,我看到:

<span class="required">*</span>
<span id="ctl00_ctl00_cphContent_cphContent_valReq_txtTracks" class="error-text" style="color:Red;display:none;">required</span>

注意“style = color:Red;”。这需要去。我不能用css类覆盖它,因为它是内联CSS。我该怎么办?

5 个答案:

答案 0 :(得分:30)

您可以设置RequiredFieldValidator.ForeColor属性来控制颜色。请注意,如果要在CSS中设置颜色,则需要设置ForeColor =“”以在控件上清除它。

答案 1 :(得分:5)

我知道这是一个旧线程,但我又遇到了这一天。设置样式表不会覆盖验证器的文本颜色,这有点奇怪。在我的情况下,我有一大堆不同的验证器和扩展验证器,我想覆盖文本颜色,因此我创建了自定义控件适配器来处理BaseValidator控件的渲染,而不是主题和皮肤文件。在渲染方法中,我只设置了ForeColor = Color.Empty。希望这有助于遇到这种情况的其他人想要覆盖所有类型验证器的文本颜色(必填字段,正则表达式,比较......)。

答案 2 :(得分:2)

您是否尝试在外观文件中添加带有空字符串的样式属性:

<asp:RequiredFieldValidator runat="server" 
    CssClass="error-text"
    style=""
    ErrorMessage="required" />

答案 3 :(得分:1)

我在某处使用你的css类中的!important标签来覆盖内联css ......

答案 4 :(得分:-2)

使用!important似乎在Firefox和IE中运行良好,但由于某种原因,谷歌Chrome中并没有这么好......但是,Chrome的份额仍然非常低。

.form_error
{
    font: bold 15px arial black,arial,verdana,helvetica !important; 
    color: #ff0000 !important;
}