An horse, an horse, my kingdom for an horse.
I can't imagine why, but some writers treat H as if it's a vowel. It's a consonant, folks, a consonant. But you'll still see some writers, who should know better, write "an hospital," "an handsome man," or "an hospitable lady." It is correct to use A before all words beginning with H with one exception: it is correct to use AN when the H is not pronounced, such as in "hour," "honor," or "heir."
Whether to use A or AN before a word depends not so much on the spelling of the word, but on the sound of the word. For example, European, eulogy, and uniform all begin with vowels, but it is correct to use A before those words because they start with a consonant sound. A European, a eulogy, and a uniform.
Sources of information: 1.) Prentice-Hall Handbook for Writers; and 2.) Purdue University Online Writing Lab, grammar, punctuation, and spelling