Как выделить все псевдоклассы в CSS? - PullRequest
8 голосов
/ 16 октября 2010

У меня есть кнопка, и я хотел знать, возможно ли сделать CSS ниже:

.button a:link, .button a:visited, .button a:hover, .button a:active {
    color: #000;
    text-decoration: none;
}

Я имею в виду, может быть:

.button a:* {
    color: #000;
    text-decoration: none;
}

Может быть, неткороче, но я просто хотел знать.Я нашел что-то вроде этого:

.button a:link:visited:hover:active {
    color: #000;
    text-decoration: none;
}

Но это не сработало, не знаю почему .. Для информации - у меня есть общие css для a в верхней части файла:

a:link {
    color: #DA5632;
}
a:visited {
    color: #CE3408;
}
a:hover {
    color: #289BF8;
}
a:active {
    color: #CE3408;
}

Таким образом, класс кнопки a должен переписать основной css.

Ответы [ 2 ]

5 голосов
/ 16 октября 2010

.button a - это все, что вам нужно

Я всегда устанавливаю стиль по умолчанию на a и нацеливаю псевдо-классы только тогда, когда мне нужен другой эффект.Изменить, чтобы включить исправление из комментариев:

Поскольку стиль по умолчанию для элемента a объявлен как:

a:link {
    color: #DA5632;
}
a:visited {
    color: #CE3408;
}
a:hover {
    color: #289BF8;
}
a:active {
    color: #CE3408;
}

в верхней части таблицы стилей, нам нужно сделать его body .button a повышая селективность, мы увеличиваем важность применяемых стилей.

0 голосов
/ 16 октября 2010

Вот несколько вещей, которые можно попробовать

убедитесь, что в вашей таблице стилей есть правило для ".button a" - также убедитесь, что эта таблица стилей включена после глобальной, определяющей правила для "a".

Если это не сработает, попробуйте конкретизировать, как в «.button> a», только выбирая прямых потомков.

Если ЭТО не работает, а это плохая практика, вы всегда можете пометить свои стили как важные, например:

color: #fff !important;

это потребует, чтобы они были проанализированы последними.

...