Стиль отключен ASP.NET Linkbutton с фоновым изображением - PullRequest
1 голос
/ 10 октября 2011

Я использую простой элемент управления ASP.NET link.

<asp:LinkButton ID="LinkButtonDelete" runat="server" CssClass="linkButtonDelete">Delete</asp:LinkButton>

Я создаю эту кнопку со следующими определениями css:

.linkButtonDelete:link
{
    background: transparent url(/../images/btnRegular.png) no-repeat scroll 0 0 !important;
}
.linkButtonDelete:hover
{
background: transparent url(/../images/btnHighlight.png) no-repeat scroll 0 0 !important;
}

И вот проблема: ЕслиЯ отключаю кнопку ссылки (LinkButtonDelete.Enabled = false;) и затем наведите курсор мыши на кнопку ссылки, фоновое изображение показывает btnHighlight.png (вместо btnRegular.png).Я проверял это в IE9 и Chrome.Тот же эффект.

Есть ли шанс, что я смогу применить стиль "отключен" только с CSS (пожалуйста, не используйте Javascript!)?

Спасибо

Ответы [ 2 ]

2 голосов
/ 10 октября 2011

Я оставляю свой другой ответ, потому что он также будет работать, но если вы хотите чисто CSS-решение, посмотрите на селекторы атрибутов, которые поддерживаются начиная с CSS 2.1.Предполагая, что ASP.NET устанавливает атрибут disabled, вы можете добавить что-то вроде этого:

.linkButtonDelete[disabled="disabled"]:hover
{
background: something else;   
}
1 голос
/ 10 октября 2011

Звучит так, будто он действует именно так, как вы говорите.Это показывает зависание.Если вы не хотите, чтобы он отображал наведение, при отключении кнопки звучит так, как будто вам нужно установить класс на что-то другое и создать новый класс, у которого нет наведения.

LinkButtonDelete.Enabled = false;
//then
LinkButtonDelete.Attributes["class"] = "linkButtonDeleteDisabled"; // give it a new class

или

 LinkButtonDelete.CssClass = "linkButtonDeleteDisabled";
...