Si, creo que estás algo confundido...
La forma de usar un fichero css es distinta...
div es una etiqueta (html) y background es un estilo, en concreto el que se ocupa del fondo... y se pueden aplicar los estilos "en línea", el caso de mi ejemplo.
Si tienes una etiqueta div (se suele decir "capa"), a esa etiqueta le puedes aplicar el estilo de fondo (color/imagen/repetición), y solo un estilo... si usas más solo se queda con el último (una imagen, un color de fondo, una forma del fondo y una posición)
Si tienes estructurada tu página por zonas, puedes poner a cada zona el fondo que quieras, y esas zonas podrían ser cualquier etiqueta html (div, span, p, table...)
Saludos