Как называть или как правильно называть классы в CSS?
Ну, логичнее всего называть по-английски, соответственно содержанию блока..
шапка - header, подвал - footer, основная часть - content, блок-обертка - wrapper, меню - догадайтесь сами))
Можно из двух-трех слов, написанных через дефис (user-menu, user-profile-image)..
Всегда должны быть осмысленные слова) Никаких .div1, .q2, и т.д.
У меня в детстве была книжка "Вредные советы"... 
Так вот. Называй 1 буквой! Делаешь кому-то сайт - называй все 1-2 буквами, переменные, классы что бы только тебе было понятно...) после этого ни у кого нервов не хватит что-то там менять :D