Saya tahu pertanyaan ini telah diajukan lebih dari dua tahun yang lalu, tetapi untuk pemirsa baru-baru ini, berikut adalah solusi alternatif, yang memiliki beberapa keunggulan dibandingkan solusi Marc-François:
div {
height: 50px;
border: 1px solid blue;
line-height: 50px;
}
Di sini kita hanya menambahkan yang line-height
sama dengan ketinggian div. Keuntungannya adalah Anda sekarang dapat mengubah properti tampilan dari div sesuai keinginan Anda, inline-block
misalnya, dan isinya akan tetap berada di tengah secara vertikal. Solusi yang diterima mengharuskan Anda memperlakukan div sebagai sel tabel. Ini harus bekerja dengan sempurna, lintas browser.
Satu-satunya keuntungan lain adalah hanya satu aturan CSS lagi, bukan dua :)
Bersulang!
<table>
dan menerapkannyavalign='middle'
pada<td>
s.