Dashboard Text / Links heavily influenced by the Main Site's CSS -- why is this?

Permalink
Every site I manage, I run into the dashboard links being different colors, font faces, and sizes due to the actual website's CSS file. I understand why this is happening, but here's what I don't understand:

Why doesn't Concrete use custom, dedicated dashboard / back-end CSS so that things stay uniform?

Quite often, I've got a website where, for instance, h1 or h2 may be white in color. Then when I go to edit a block, the headings in the edit window are invisible/white-on-white, and I end up having to either go customize/override the block, or highlight everything I need to see.

If this is for some reason not possible, then by all means, I'll be quiet -- I'm just looking for an explanation as to why!

 
glockops replied on at Permalink Reply
glockops
The theme you are using is being "greedy" and overwriting concrete5's styles. Because the edit/add/interface windows are being loaded on the same page as your site, a separate "concrete5" stylesheet cannot be independently loaded.

And insuring everything looked perfect in the interface with all the possible themes out there would make the interface CSS unbearably huge.

So, it is up to the theme to establish, non-greedy styles. So your theme shouldn't have a h1 declaration, but instead a .mytheme h1 declaration. Where .mytheme is a class applied to a div that wraps your webpage from top to bottom.

Applying styles to common tags or classes will result in what you're experiencing.
bw1 replied on at Permalink Reply
This is actually exactly my point -- instead of making the theme jump through hoops, why can't C5 use something along the lines of .c5backend h1?

It seems a bit forward to suggest that using standard h1 h2, etc. is "greedy", when the whole back-end could quite easily use a dedicated stylesheet as suggested above and avoid any/all conflictions...
admin replied on at Permalink Reply
We do. Most everything in concrete5 is wrapped in the .ccm-ui class, which we then wrap our styles around in the ccm.app.css file.

For some reason the dashboard dropdown is kind of a special case and seems to be a bit more greedy in some themes than other parts of the UI.
glockops replied on at Permalink Reply
glockops
The dashboard elements are wrapped in the ccm-ui class, however unless they have every single CSS declaration defined then it's entirely possible for a theme to over-ride a "concrete5" specific declaration.
bw1 replied on at Permalink Reply
It must be the same for block-edit pop-ups? This is where I really notice it, and run into conflicts all the time.

It just seems unprofessional or incomplete for something so trivial as an h1 to change the core, back-end appearance of a CMS, doesn't it?

Maybe this is normal for CMS's....? If so, just slap me and I'll shut up. :)