Modernizr/Modernizr — pull request #1048 by stucox (2013-11-25 09:02:21+00:00)
Title: `flex-wrap` contention

In v2.6.2, `Modernizr.flexbox` uses the `flex-wrap` property to detect support, but a string of issues (#744, #757, #812, #934, #936, #982) resulted in us changing this in v3.0pre to use `flex-basis` instead.

This is because, among other things, Firefox 21+ supports the modern flexbox syntax, except `flex-wrap` and `flex-flow` – so it would "false positive" for flexbox support.

Recent discussions on Twitter have highlighted that some users rely on `Modernizr.flexbox == true` meaning `flex-wrap` is supported:

> Well, that's going to break at least three sites I've coded, maybe 4. :-/
> https://twitter.com/joshbroton/status/383590623434903553

and:

> I think Flexbox is basically worthless without flex-wrap support.
> https://twitter.com/joshbroton/status/383590623434903553

[Solved By Flexbox](http://philipwalton.github.io/solved-by-flexbox/) doesn't use `flex-wrap` in any of its examples… but it does use it in its own page styles.

There's clearly a use case for flexbox without `flex-wrap` support, and a use case for knowing if `flex-wrap` is supported.

So… maybe we need a separate `Modernizr.flexwrap` detect?

The `flex-wrap` property features in both the modern spec and the 'tweener' spec IE10 implemented, so either:

* `Modernizr.flexwrap` should depend on a true result for `Modernizr.flexbox`; or
* Users should use `Modernizr.flexbox && Modernizr.flexwrap` / `.flexbox.flexwrap` to target the modern version of the spec

Thoughts?

/cc @joshbroton