Posted on: October 23, 2017, 08:37:00 AM
Template: StorePro, downloaded a few days ago.
Plugin: Accordion Menu, also downloaded a few days ago.
While working on some styling for the Accordion Menu module, I used the dev tools feature of Chrome to find the style(s) I needed to modify. (Pretty standard, no surprises ...)
I then confirmed that new styles placed in custom.css (in the template subdir) did, in fact, take precedence as expected.
However, while attempting to change the hover/active color of the top-level elements, I discovered that there were 30+ s5_accordion_menu CSS style defs were in template.css, while a relatively small number were in s5_accordion_menu.css.
I've seen, for the most part, the s5_accordion_menu styles in template.css are a superset of those found in s5_accordion_menu.css. I didn't expect this. (Of course I understand that the Accordion Menu styles found in the template's CSS file will be ignored if the Accordion Menu is NOT installed.)
Since I'm new with S5, I have no idea how frequently the templates and extensions are updated (if ever), which brings me to the question of Best Practice.
What is best practice for style changes? I've noticed in reviewing many entries in this forum that there is the frequent inference and/or mention of actually changing the template and/or extension CSS files directly. I thought that this type of change was NOT to be done, since either the template and/or the extension could be updated and reinstalled; any changes made to source files would be therefore be lost.
Is there any reason to NOT use custom.css for ALL changes?
It is more efficient to the rendering if the source files contain the custom styles?
Is custom.css the "last place" checked by the rendering engine for styling data?
Or, is it the case that StorePro and/or Accordion Menu (in my site) will never be updated, and therefore source file changes can be, in effect, viewed as permanent?