当前位置:  开发笔记 > 后端 > 正文

ASP.Net验证器默认样式

如何解决《ASP.Net验证器默认样式》经验,为你挑选了2个好方法。

我正在使用Validator控件的几个变体(RequiredFieldValidator,CompareValidator等),并使用验证器的CssClass属性.我可以看到(通过Firebug)该类正在应用,但验证器控件本身正在为其添加一个样式元素,即color:red.但我不希望这样.我希望控件只使用cssclass.

我知道我可以覆盖Forecolor属性,但我必须在项目中的每个验证器上执行此操作.而且我真的希望能够在我的样式表中更改我的CSS类,以防我们将来必须更改所有错误消息的外观.

任何人都有任何线索如何告诉Validator控件不使用他们的默认样式?



1> Keltex..:

您可以在css文件中执行此操作:

.validator
{
    color: blue !important;
}

这将覆盖内联红色样式.


仅供参考.从ASP.NET 4.0开始:*默认情况下,从它派生的BaseValidator类和验证控件不再呈现红色文本.*(如果controlRenderingCompatibilityVersion未设置为"3.5")
这是ASP.NET吸吮的一个很好的例子.使用`!important`只是因为ASP.NET将`style ="color:Red""推到你身上.

2> Rich..:

您可以使用主题更改验证器的默认样式.

右键单击Visual Studio中的网站

选择"添加ASP.NET文件夹"

选择"主题",将新文件夹命名为"DefaultTheme"

在DefaultTheme文件夹中创建名为"Controls.skin"的文件

将以下内容添加到Controls.skin文件中:







将以下内容合并到您的web.config:


    
        
    

然后,您可以.validation-error在CSS文件中设置所需的颜色.

(请注意,默认情况下,4.0之前的ASP.Net版本用于应用于所有验证器,这使得很难在CSS中覆盖它们的颜色.如果发现这对您有影响,那么您可以通过ForeColor在每个验证器上设置属性来覆盖它.上面的主题元素,或添加!important到您的CSS规则.)

看到:

如何:定义ASP.NET页面主题

如何:应用ASP.NET主题

验证控件在ASP.Net 4.0中丢失了它们的红色

推荐阅读
360691894_8a5c48
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有