2👍
Probably the cleanest way is to write really semantic HTML, allow various bits of it to be configured using dbsettings (e.g. site names etc), then allow the user to add their own CSS file (perhaps by allowing the path to a CSS file to be managed through dbsettings).
Source:stackexchange.com