По-хорошему все ui элементы должны быть поделены по области применения на документ и приложение. Это позволит наделить их разной функциональностью и требованиями и лучше понимать семантику.

Это деление примерно соответствует большим группам существующих сайтов.

Проблемы подхода

Cases