Ini adalah solusi bersih lainnya:
sub, sup {vertical-align: baseline; position: relative; font-size: 70%;} /* 70% size of its parent element font-size which is good. */
sub {bottom: -0.6em;} /* use em becasue they adapt to parent font-size */
sup {top: -0.6em;} /* use em becasue they adapt to parent font-size */
Dengan cara ini Anda masih dapat menggunakan tag dukungan / sub tetapi Anda memperbaiki perilaku buruk mereka untuk selalu mengacaukan ketinggian baris paragraf .
Jadi sekarang Anda bisa melakukannya:
<p>This is a line of text.</p>
<p>This is a line of text, <sub>with sub text.</sub></p>
<p>This is a line of text, <sup>with sup text.</sup></p>
<p>This is a line of text.</p>
Dan tinggi baris paragraf Anda seharusnya tidak kacau.
Diuji pada IE7, IE8, FF3.6, SAFARI4, CHROME5, OPERA9
Saya menguji menggunakan p {line-height: 1.3;}
(yang merupakan ketinggian garis yang baik kecuali jika Anda ingin garis Anda tetap terlalu dekat) dan masih berfungsi, karena "-0.6em" adalah jumlah yang sangat kecil yang juga dengan ketinggian garis itu sub / sub teks akan cocok dan jangan saling membahas.
Lupa detail yang mungkin relevan Saya selalu menggunakan DOCTYPE di baris 1 halaman saya (khususnya saya menggunakan HTML 4.01 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
). Jadi saya tidak tahu apakah solusi ini berfungsi dengan baik ketika browser berada dalam quirkmode (atau bukan mode standar) karena kurangnya DOCTYPE atau DOCTYPE yang tidak memicu mode Standar / Hampir Standar.