In moving my h1 and h2 tags close to one another, I have discovered that on some occassions h2 will overlay h1 and on other times - on a different page - it will not.
I am using minus margin values to move h2 up towards h1, but do not think this is the cause. This is the only way I know to move the h2 line up. I have also tried using z-index values to move either but that did not work at all. I used a positive z-index in the h1 rule to try and raise it above h2 and vice-versa on the h1 element. Neither worked.
By default, does <h1> have higher z-index than <h2>?
No. By default, elements stack in the order they come in the HTML, with the later ones sitting above those before them (which you see when they are forced to overlap).
To set z-indexes on them (and thus change the default stacking order), you need some kind of positioning. E.g.