Examining the content of this css file (focusing on the last 5 lines specifically):
#page section .s_1 { overflow:hidden; width:435px; float:left;}
#page section .s_1 h1 { font-size:36pt; color:#001744; line-height:1.1; margin-bottom:64px;height:107px;}
#page section .s_1 menu { list-style:none;padding:0; margin:0;}
#page section .s_1 menu li { float:left; padding:0; margin:0;}
#page section .s_1 menu li a {background-image:url(../images/icon_buttons.png); background-repeat:no-repeat; width:79px; height:79px; display:block;}
#page section .s_1 menu li + li {margin-left:10px;}
#page section .s_1 menu li.b_1 a { background-position:0 0;}
#page section .s_1 menu li.b_2 a { background-position:-89px 0;}
#page section .s_1 menu li.b_3 a { background-position:-178px 0;}
#page section .s_1 menu li.b_4 a { background-position:-267px 0;}
#page section .s_1 menu li.b_5 a { background-position:-357px 0;}
...
Is this extensive CSS document following the correct coding practices?
This familiar pattern can be found in numerous websites.
The goal should be to keep the CSS file concise, so why include all these repetitive selectors?
It might be more efficient to utilize only Id's for quicker parsing and a smaller overall CSS file size.
By converting certain elements to id's, I could condense this css file significantly. Am I overlooking any important factors?