I have to say - while some 80% of browsers still in use do not support HTML5, stick with Javascript. I do accept that the new input types included in HTML5 will degrade properly in older browsers. But they do not actually work. And different browser vendors have implemented support in different ways. IE support seems to be minimal.
And that pattern still does not check that the date is a
valid one.
But I have found a useful script to emulate HTML5 functionality:-
https://github.com/ryanseddon/H5F