El artículo al que se refiere @Lee Theobald es un buen comienzo.
Algunas ideas básicas que trato de tener en cuenta al marcar:
En cuanto html:
tratar de escribir para la siguiente persona - es decir, pensar en lo fácil o difícil que sea para que alguien más venga y recoja tu trabajo y continúe.
Para apoyar este principio, usted debe tratar de asegurarse de que su margen de beneficio es lo más legible posible - clase y etiquetas de identificación, en particular, deben relacionarse tanto como sea posible a su contenido deseado. En otras palabras, intente utilizar sus etiquetas para describir el tipo de contenido que tendrá.
Por ejemplo, "Sub-navegación", "contenido", etc.
El objetivo es proporcionar marcado que alguien pueda recogida no haber visto antes y tener una idea de la estructura lógica del documento.
Además, trate de evitar la adición de marcado que es puramente para lograr un efecto visual. Pero hay que tener en cuenta que cualquier sitio web que requiere aún un estilo poco sofisticada es poco probable que pueda evitar el marcado no semántica, debido a la debilidad de las implementaciones actuales de los problemas de CSS y el navegador de compatibilidad.
En cuanto a los archivos CSS:
Muchas personas dividen su css en secciones usando los comentarios, separándolos en áreas funcionales o estructurales. Por lo tanto, es posible que tenga una sección para su encabezado, pie de página o tipografía, y así sucesivamente. Otros llevan esto más allá y dividen css entre archivos, teniendo uno para la tipografía, uno para el diseño, etc. Sin embargo, esto puede ser según Yslow. puede tener un impacto negativo en la carga de la página, debido al aumento de las solicitudes http.
Podría escribir más, pero como pueden ver me cuesta ser conciso. Espero que esto sea de alguna utilidad para ti.