Добрый день.
Объясните, пожалуйста, почему срабатывает div.to-rudolf{
margin-left:120px;
}
ведь выше такое же объявление по специфичности <style>
div.to-keksik{ /* Кексик закрепляет преимущество */
margin-left:-120px;
}
< /style>
а ранее говорилось
В этом блоке теории неточность. Имелись в виду стили не внутри тега <style>, а локальные стили внутри атрибута style элементов. К примеру, <p style="text-align: right;"></p>.
Я поправил теорию в «Знакомстве». Правила внутри <style></style> имеют одинаковый приоритет с подключаемыми внешними стилями.
Можно мне тогда как тугодуму объяснить… Нам нужно сделать наше правило более специфическим. А в предыдущем уроке нам говорили, что одинаковые селекторы обладают одинаковой специфичностью. И тут мы делаем такой же селектор, как у Кексика.
И вообще мое решения тоже правильное, или не корректное, или вообще не правильное?
Одинаковой. Но при этом из двух селекторов с одинаковой специфичностью срабатывает тот, который написан в коде ниже другого.
Ваш селектор в данном случае не корректный.
Посмотрите на код:
Извините за занудство, но хочется понять. Как я понял из теории, то код .cat-rudolf + .to-rudolf {
margin-left: 120px;
}
означает, что стили будут применены к .to-rudolf только в том случае, если он стоит за .cat-rudolf. То есть тут не говориться о том, что нужно передвинуть самого кота. Или нет?
Ничего. Я всегда за истину. И все-таки вы правы. Может быть и такой селектор.
Но в данном задании демонстрируется один из способов увеличения специфичности: "элемент.класс"
Вы применили другой. Если проверку расширят и добавят ваш вариант, то будет работать.
А пока ваш вариант некорректный.
Доброго времени суток.
Добрался и я до курочки (Кексик, не сердись, я фигурально)
Заметил интересную особенность 1 раунда задания:
Почитав предварительно про специфичность и прикинув, что при одинаковой специфичности тапки у того, у кого заначка (в данном случае тег div ) обновил страницу и вторым вариантом просто сдублировал первый селектор со всем содержимым и поставил его последним.
Понятно, что засорять код не есть хорошо, тем не менее код сработал - условие не менять значение выполнено, что в теории разрешено менять порядок правил , итого: сработал вариант “тапки у того, кто последний”
P.S. Зацепила меня эта курица
Нашел еще вариант, при котором срабатывает:
.to-keksik+.to-rudolf {...}
во втором правиле.
Ну, или добавить еще 1 правило:
.cat-rudolf+.chicken {
margin-left: -120px;
}
Так же и со вторым раундом - есть еще варианты
Для себя сделал вывод, что решений, которые примет система, может быть несколько, но оптимальное все-таки красивее
Вариант
div.to-keksik /* в первом
или */
div.to-rudolf /* во втором*/
еще раз доказывает, что краткость - сестра таланта
Спасибо авторам за замечательный проект. Продолжу занятия с удовольствием.
Добрый день! И всё же хочется подытожить: т.е. CSS всегда считается как бы “низом” кода по отношению к HTML и если div.to-rudolf написан в CSS, а div.to-keksik в HTML, то будет срабатывать div.to-rudolf, т.к. он расположен “ниже”, в CSS. Правильно я понимаю?