控制由DataPager呈现的禁用分页链接([disabled =“disabled”])的外观

时间:2010-04-08 15:26:23

标签: asp.net internet-explorer-7 datapager

我有一个带有下一个和上一个按钮的数据按钮,如下所示:

   <asp:DataPager ID="dpFeaturedPager" PagedControlID="lvFeaturedTips" QueryStringField="ftpg" PageSize="1" runat="server">
        <Fields>            
            <asp:nextpreviouspagerfield ButtonCssClass="featured-previous" PreviousPageText="Previous" ShowNextPageButton="false" />
            <asp:nextpreviouspagerfield ButtonCssClass="featured-next" NextPageText="Next" ShowPreviousPageButton="false" />
        </Fields>
    </asp:DataPager>   

当只有一个页面可用时,Next和Previous链接将如下呈现:

<a disabled="disabled">Previous</a>

之前我没有看过这个禁用的标签,并且假设它来自我无法控制的datapager控件。

像往常一样,这在FireFox上很好,但在IE7上,上一个和下一个文本无法正确呈现 - 它是概述的(我希望看起来像老实说的残疾人 - 但在页面看起来有点难看!)

我可以在CSS中控制它,还是这是一个已知问题?

由于 邓肯

5 个答案:

答案 0 :(得分:2)

StackOverflow上查看此主题,他们对已禁用的链接和控件的CSS样式有一些建议。希望它有所帮助!

a[disabled=disabled] { 
  color: red; 
  font-weight: bold;
  border: 0px;
} 

编辑:看起来看起来不像选择器属性在IE6中。

答案 1 :(得分:0)

无法在IE中设置禁用控件的颜色。您可以更改背景或边框,但颜色将始终保持灰色并带有白色阴影(系统颜色)。它甚至在IE9中也不起作用。 关于此问题的主题:How to change color of disabled html controls in IE8 using css

答案 2 :(得分:0)

使用jQuery快速解决方案 removeAttr()

$('a').removeAttr('disabled');

此:

<a disabled="disabled">Sad</a>

成为这个:

<a>Happy</a>

答案 3 :(得分:0)

我在下一个和上一个链接中添加了一个'btnDisable'类,然后使用了CSS ...

span .btnDisable {cursor: not-allowed; }
span a.btnDisable {cursor: pointer; }

只需确保将RenderDisabledButtonsAsLabels设置为True。

答案 4 :(得分:0)

对于仍在寻找此问题的用户,从.net 4.0开始,您可以在web.config文件中定义.net控件的HTML兼容性。

<pages controlRenderingCompatibilityVersion="4.0" clientIDMode="AutoID">

然后在Global.asax.cs中,您可以指定CSS类.net应该应用于禁用的控件。

System.Web.UI.WebControls.WebControl.DisabledCssClass = "disabled";