Я не снабдил бы префиксом тип, поскольку можно вывести это в селекторе, если Вы должны
form#contact {
property: value;
}
метод, Вы описали, известен как Венгерская запись и не очень популярен.
Для того, что Вы упоминаете, Вы могли поместить свой введенный HTML в одном отделении с одним уникальным классом/идентификатором, который имеет своего рода локализованный сброс. Ищите селектор CSS specificty, чтобы гарантировать, что Ваши правила возьмут влияние и не другие правила на странице хоста CSS. См. этот ответ на подобный вопрос относительно моделирования элемента в родительской странице.
Много людей не понимает, что можно сделать этот материал:
.awesome {
/* rules for anything awesome */
}
div.awesome {
/* rules for only awesome divs */
}
button.awesome {
/* rules for any awesome buttons, but not awesome divs */
}
div.awesome h1 {
/* rules for H1s inside of any div.awesome */
}
div.awesome>button {
/* rules for immediate children buttons (not grandchildren+) of div.awesomes */
}