Tengo un elemento <h1> a lo largo de la web y al que quiero dar un color de fondo. La anchura de ese color tiene que ser igual al del título en cuestión. Al ser <h1> un elemento en bloque, el fondo ocupa todo el ancho de línea. Si lo convierto en elmento en línea, funciona pero entonces no puedo darle un margin o padding inferior para separarlo del párrafo. Dejarlo como bloque y darle una anchura determinada tampoco funciona pues cada título tiene una anchura distinta.
Tiene toda la pinta de ser un problema bastante común y con una solución muy sencilla pero no logro dar con ella. ¿Alguna ayuda por ahí?