Если вы пытаетесь переопределить селектор, у которого у нет идентификатора с идентификатором, который у был , ваша ошибка быть на месте
Однако в этом случае вы используете #get_started
(у которого есть идентификатор) для переопределения #header ul li a
, в котором также есть идентификатор .
Конечно, вы думаете, что ваш ID более конкретен, чем #header
ID - и вы не совсем не правы - но это не так, как работает CSS. Он заботится только о количестве идентификаторов, используемых в селекторе, а не о том, на какие элементы эти идентификаторы нацелены.
Чтобы выяснить, какой из двух селекторов имеет приоритет, сначала посчитайте идентификаторы в каждом. Если у одного есть больше идентификаторов, чем у другого, он выигрывает, и все готово.
Если это одно и то же число (в этом случае оба имеют одно), переходите к числу классов. Опять же, если у одного есть больше классов, чем у другого, он побеждает, и все готово. В этом случае оба имеют нулевые классы.
Итак, мы переходим к количеству имен тегов. Еще раз, если у кого-то больше имен тегов, он побеждает. И здесь #header ul li a
содержит три тега (ul
, li
и a
), тогда как #get_started
не имеет ни одного. Ты проиграл. Существующий селектор побеждает.
Вы можете обойти это, просто #header #get_started
, у которого теперь есть два идентификатора, но я бы предпочел более четко описать это как:
#header ul li a#get_started