Change all Post titles into [Title Case] format

EDIT: WP Title Hook

Ok, so if you’re using wp_title (which you probably are, it’s default) that function should have two filters in it you could use.

The first one is wp_title_parts, which returns your title broken up into an array.

function wp_title_capitalize( $title_parts ) {

    // Only uppercases the words of the first element (should be the page title)
    $title_parts[0] = ucwords( $title_parts[0] );

    return $title_parts;

}
add_filter( 'wp_title_parts', 'wp_title_capitalize' );

OR if you’re ok with running the uppercase filter on the whole thing, you can run it on wp_title

function wp_full_title_capitalize( $title, $sep, $seplocation ) {

    // Uppercases the entire title
    $title = ucwords( $title );

    return $title;

}
add_filter( 'wp_title', 'wp_full_title_capitalize' );

The second answer is easier to understand, since it runs on the whole thing, but if your titles look like

About Us | COMPANY NAME

Then, you probably want to go with the first option.

As always, with hooks & filters, these go in functions.php of your theme.

Old Answer (CSS ONLY)

If you’re only worried about the display, you can just apply

text-transform: capitalize;

to the CSS of your h1.

http://www.w3schools.com/cssref/playit.asp?filename=playcss_text-transform&preval=capitalize