It's great that Sasson has a built-in mechanism for the box-sizing polyfill, and I realize that the main reason it's in there is to keep salsa/gridy/whatever from breaking horribly in lte IE7.

My suggestion: an elegant solution for all polyfills in Sasson. Especially CSS3 ones that will drag gte IE8 into the modern age. After all, the heck with IE7, amiright? But I can't ignore the 15% of my users who won't see my sexy shadows, gradients and rounded corners.

Sure, there are other projects like css3pie, but it seems to fit well with Sasson's overall philosophy of normalizing and fixing style differences (formalize, normalize, box-size poly, etc), and with cutting theme development time (salsa, google font api, compass, etc).

From a UI standpoint, @font-your-face does a great job with how it adds local webfonts, and lets you quickly enable and modify selectors on activated fonts. I could imagine something like to add libraries and use modernizr to apply the polys.

Food for thought.

Comments

erutan’s picture

I don't think it's within the scope of Sasson for tsi to code up his own polyfill solution, but having a commented link to a remote hosted css3pie is a possibility. It'd be a pain to have to monitor the project and update sasson whenever css3pie gets an update.

tsi’s picture

What are you suggesting exactly? there is no one solution to all cross-browser issues.
There are many polyfills, some of them worth being included into Sasson (like html5shiv), others don't.
So you might suggest adding another polyfill, the question is which one? if you're talking about CSS3PIE, well, that actually could be pretty awesome to include it with a partial like this one, don't you think?

erutan’s picture

I can't say I've done exhaustive reasearch on recent polyfills available, but this one does seem useful.

Partial looks good, having css3pie linked to in a scripts folder seems like a nice simple solution.

superjerms’s picture

I agree to all of the above, and certainly wouldn't suggest that tsi be responsible for choosing and maintaining them. It's exactly what tsi said; there's no one solution to cross-browser issues. With all of the advantages/drawbacks, and the need to inform Sasson of the box model poly anyway, I'm just thinking of a centralized place to do it.

Really, I'm wondering if there's an elegant mechanism that could enable reset/extension/poly addons, ideally without them residing in the scripts or includes folder (maybe collecting specified ones from .info and offering them to add_js() or using Libraries API). That way, tsi isn't stuck choosing what stays or goes, or reinventing if something later/greater needs to come along.

I don't know if any of that is even possible, or if i'm just sounding like someone who doesn't understand the logistics and boundaries of themeing. Really, i needed to use css3pie, and though, "Hmm...I wonder if it makes more sense to have sasson do this poly, do a preprocess hook myself, or use a module."

erutan’s picture

A contrary view on polyfills here: http://adactio.com/journal/5969/ (not to sway the thread, more something to think about as I stumbled across it recently).

One option is to release a subtheme of Sasson that has some extra goodies in it - I'm going to go that route once 3.x stabilizes. :) Another approach might be to write a module that lets you choose from a list of compass gems / polyfills / etc and then pull them into /sites/all/libraries then people can choose to include them from their subtheme? That might be a nice way to approach it as then those resources would be available to any themer.

PS - I don't fully grock the boundaries either, so you're in good company. :)

erutan’s picture

tsi’s picture

That is actually a part of compass core, but it won't extend the standard compass css3 mixins like our partial does.
Maybe we can contribute that partial to compass itself.

erutan’s picture

The one in core seems a little behind as well - not sure on the terminology, but it requires an installation unlike the rest of core so I just called it an extension. :)

Your partial might work best as an alternate approach, it might adversely impact page load time depending on site layout: "each element that has a PIE behavior attached adds about 10ms to the page render time. Moderation is recommended."

erutan’s picture

Issue summary: View changes

additional thought about the UI aspect

tsi’s picture

Issue summary: View changes
Status: Active » Closed (works as designed)

Cleaning up