<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">As many of you know, we use both <a href="https://developer.mozilla.org/en-US/docs/Chrome_Registration#content-instruction">content</a> and <a href="https://developer.mozilla.org/en-US/docs/Chrome_Registration#skin">skin</a> stylesheets in the Firefox front-end and there are some <a href="https://wiki.mozilla.org/Firefox/CSS_Tips#Content_or_Theme_CSS">guidelines</a>
for how to separate CSS properties between the two. I believe the
primary reason for the separation is so complete themes (which only
replace our "skin" stylesheets) don't have to re-implement our
functional styles, only theming/presentation-related ones.<br><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Once we <a href="https://wiki.mozilla.org/Add-ons/Themes/FAQ#What.E2.80.99s_going_to_happen_to_existing_themes.3F">remove complete themes in 57</a> I think this should change since the primary factor for the separation will be gone. I think the reasons are obvious (e.g. duplication of selectors between files, confusing for new contributors, etc.) so I won't go into those now. I think there are two high-level paths forward:<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">A) Consolidate all styles in one package (I think it would be "content" but see discussion below¹)<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">** We can still use a preprocessor in CSS or in jar manifests to vary OS-specific styles<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">B) Change the distinction to "content" for OS-agnostic styles and "skin" for OS-specific<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">** Essentially all "shared" skin styles can move to "content" which simplifies things somewhat since we move from three locations for stylesheets to two.<br><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Note that I'm not suggesting we have to do this migration all at once or right away but I'm trying to figure out the ideal situation and we can figure out a migration strategy later. I'm starting this discussion a bit early because we're already working on features and new stylesheets that don't plan to ship until 56/57 so it's good to keep in mind the direction we're headed.<br><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">¹ The "content" package is chrome-privileged whereas the "skin" package isn't (even though they both use chrome URIs). The chrome privileges are sometimes necessary with our style to avoid cross-origin issues related to SVG and possibly other examples I don't know off-hand. Is there any practical security benefit to using "skin" for everything (if possible)?<br><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">What do others think about changing/removing the "skin" vs. "content" distinction?<br><br>I personally think (B) is simplest to transition to while still providing a clear separation for OS-specific styles so I lean towards it but if we can come up with a good convention for handling OS-specific styles with option (A) then that's also fine with me.<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><a href="https://wiki.mozilla.org/Add-ons/Themes/FAQ#What.E2.80.99s_going_to_happen_to_existing_themes.3F"></a></div></div>