Problème aligne verticalement du texte d'un élément qui s'étend sur deux lignes

Je veux aligner du texte dans le milieu de mon élément l'aide de CSS. C'est mon balisage:

<div id="testimonial">
    <span class="quote">Some random text that spans two lines</span>
</div>

Et le CSS:

#testimonial {
    background: url('images/testimonial.png') no-repeat;
    width: 898px;
    height: 138px;
    margin: 0 auto;
    margin-top: 10px;
    text-align: center;
    padding: 0px 30px 0px 30px;
}

.quote {
    font-size: 32px;
    font-family: "Times New Roman", Verdanna, Arial, sans-serif;
    vertical-align: middle;
    font-style: italic;
    color: #676767;
    text-shadow: 1px 1px #e7e7e7;
}

Habituellement pour obtenir .quote dans le milieu vertical de #testimonial, je le ferais:

.quote { line-height: 138px; }

Mais cela casse la mise en page parce que le texte en .quote s'étend sur plus d'une ligne.

Comme vous pouvez le voir j'ai essayé de faire vertical-align: middle; et que cela ne fonctionne pas.

Toute aide est appréciée. Des acclamations.

double possible de Comment faire pour aligner le texte verticalement ?
Non, line-height ne fonctionne pas dans ce cas car mon texte est plus qu'une ligne.
Ce n'est pas une bonne double. L'on a accepté la réponse est à l'aide de line-height, ce qui n'est pas bon pour plusieurs lignes. Le display: table-cell réponse est là, mais il n'a pas d'explication et pas de upvotes.
La "meilleure" façon est d'utiliser/d'imiter un tableau (que ce soit dans le balisage ou en CSS à l'aide de table-cell) et puis sur set pour afficher valign="middle". Mais elle est sale. Oh si sale.
Vous avez raison - mais il y a beaucoup de choses à choisir. Permettez-moi d'en trouver un autre.

OriginalL'auteur Josh | 2011-05-30