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

<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。我该怎么办?

有帮助吗?

解决方案

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

其他提示

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

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

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

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

使用!important 似乎在Firefox和IE中运行良好,但由于某些原因不适用于谷歌Chrome ...不过没什么大不了的,Chrome的份额仍然非常低。

.form_error
{
    font: bold 15px arial black,arial,verdana,helvetica !important; 
    color: #ff0000 !important;
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top