The vertical-align property only applies to:
inline-level and ‘table-cell’ elements
See this link.
You could use line-height to vertically center the text, just make it bigger than the actual font-size, however it is only effective if the text spans a single line.
Alternatively you could add padding to the top and bottom of the header element by equal values.
Edited as per comment: the obvious solution if using HTML5 header element would be to make it display: table-cell; instead of the default block which I think the reset CSS’s apply.