Здесь в основном есть две школы мысли.
1) Стиль, который следует за разметкой 2) Разметка, которая следует за стилем.
Вы должны выяснить, какую из них вы хотите сделать, ипопытаться придерживаться одного или другого.если вы слишком много смешиваете, то это бессмысленно, и у вас просто огромный беспорядок.
Во-первых, у вас есть набор разметки, который не меняется.Вы выбираете стиль, чтобы он выглядел так, как вы хотите.Это в духе css zen garden.Это требует, чтобы ваша разметка была чрезвычайно семантической.Недостатком является то, что у вас часто бывает много повторяющихся стилей, потому что при использовании этого метода не всегда возможно создать чистый стиль.
Во втором вы создаете много общих стилей, а затем адаптируете свою разметку, чтобы соответствоватьстили.Например, у вас могут быть классы «float», «thinBorder», «bold», а затем применить эти стили к вашей разметке.Недостатком здесь является то, что если ваш стиль нуждается в изменении, то вы должны изменить HTML (или сделать жирный шрифт не жирным, или что-то подобное).Положительным моментом является то, что ваш CSS намного более чист и удобен в обслуживании.
Это отстой, но вы должны сделать компромисс.