У меня возникли проблемы с объяснением людям, которые не знакомы с CSS, как работает каскад при использовании таблиц стилей. По какой бы то ни было причине, новички, похоже, естественно начинаются, просто добавляя класс к каждому элементу. Возьмите фрагмент кода из этого вопроса, например (не нарушайте OP, overtherainbow).
Выполнение этого: ul#nav { }
и ul#nav li { }
Лучше, чем: ul.nav { }
и li.navLinks { }
Это очень простой пример, но вы понимаете. Использование наследования в этом случае явно полезно.
Я попытался использовать семантику в качестве контрольной точки, но это оказалось неэффективным. Вполне возможно, что термин "класс" является интрузивным/запутанным из-за предварительного знания ООП. В конце концов, увидев хороший пример после хорошего примера, у них всегда есть момент прорыва, когда они, наконец, "получают". Но я ищу способ упростить этот процесс, потому что я не хочу быть тем парнем, который должен вернуться и поддерживать этот побочный продукт, который сливается в производство.
Мне особенно понравился этот ответ, который объясняет рекурсию. У меня было знакомое объяснение, когда я учился в школе, и сразу же "получил". Я надеюсь, что кто-то блестящий там будет иметь похожий способ объяснить каскад, но тщательно.