Вы обнаружите, что в крупных проектах макет и цвет / цвет CSS (если вы умны) обычно оказываются раздельными. Во-первых, если вы ловите себя на том, что снова и снова устанавливаете правила стиля color / font-size / font-family, вы теряете время. Обычно вы должны определять свои шрифты в одном месте: тег body. Любые дополнительные шрифты должны быть определены в их соответствующих тегах ... h1, h2, p и т. Д. По моему мнению, не стоит давать эти теги позиционным директивам; они должны быть помещены в div, который будет отвечать за их расположение. То же самое касается цвета и размера шрифта. Я думаю, что единственным исключением из этого правила, как правило, являются фоновые элементы, что особенно верно, если у вас много градиентов и подобных вещей.
На самом деле все сводится к планированию; Хорошо спланированный проект требует очень мало правил стиля цвета / аромата. Поэтому, чтобы ответить на ваш вопрос, да, у меня обычно есть файл «Global.css», который определяет все мои шрифты и цвета для h1-h5, a, p и любых других тегов, которые будут содержать текст.
Edit:
Обычно, поскольку проекты, в которых я работаю, являются довольно крупномасштабными и имеют ряд различных модулей, мы разделяем стили в некоторой иерархии; это имеет смысл из-за того, как работает CSS - до тех пор, пока вы не измените правила стиля, установленные в «base» (или в нашем случае, global.css) где-то внизу, стили будут придерживаться. Это помогает, потому что когда мы хотим изменить шрифт нашего сайта, мы просто меняем правило font-family в теге «body», и оно будет распространяться по всему сайту.
Итак, наш макет таблицы стилей работает примерно так:
Global.css (Fonts/Text/Primary font colors)
--> genericBase.css (basic page structures such as columns that are used throughout the site)
--> nav.css (left-hand nav and/or top nav bar)
--> formLayout.css (labels, inputs, fieldsets, any other form stuff)
-----> forums.css (individual modules' styles that may deviate a bit from the usual structures, or simply things specific to those pages)
-----> blogs.css
-----> messages.css (etc etc etc)
Стрелки здесь означают «порядок» файлов в иерархии. Чем длиннее стрелка, тем дальше внизу таблицы стилей будут содержаться правила, содержащиеся в этих файлах, если мы поместим все стили в один файл.
Итак, вы видите, вся идея состоит в том, чтобы начать с очень общих стилей и перейти к самым конкретным. Помните, что порядок загрузки файлов CSS имеет значение для браузера . Вы можете использовать это в ваших интересах. Интересно, что к тому времени, когда мы доберемся до CSS-файлов наших конкретных модулей, у нас будет очень мало стилей для записи, потому что большинство других важных вещей на самом деле работают сами по себе.
Итак, как я уже сказал, планирование жизненно важно. Я обнаружил, что эта методология облегчает «отладку» моих стилей, и я почти не использую хаки, обычно только для глупых вещей ie6.
Дайте мне знать, если вам нужна дополнительная информация. Я рад, что это полезно для вас.