csstextpositioning

CSS: Position text in the middle of the page


I would like to position a <h1> in the middle of any user's page. I have been searching the internet and they all position it in the incorrect place. Thank you!

UPDATE: I mean vertical and horizontal! In the exact middle!
ALSO: There is nothing else on the page.


Solution

  • You can use position: absolute and top-margin-top to vertically align something whose height you know, and line-height to give a single line of text a known height with the text in the middle:

    h1 {
        left: 0;
        line-height: 200px;
        margin-top: -100px;
        position: absolute;
        text-align: center;
        top: 50%;
        width: 100%;
    }
    <h1>Hello, world!</h1>