Cách viết chỉ số trên trong HTML
Bọc phần chữ nâng lên trong <sup>. Trình duyệt hiển thị nó nhỏ hơn và nâng lên trên dòng. Thẻ đi cặp với nó, <sub>, hiển thị chữ nhỏ hơn và hạ xuống:
<sup> và <sub> là phần tử inline và có thể chứa các phần tử inline khác, nên 2<sup>n+1</sup> hay x<sub><i>i</i></sub> cũng chạy được.
Các cách dùng phổ biến
| Bạn muốn | Viết | Kết quả |
|---|---|---|
| Số mũ | 10<sup>3</sup> | 10 mũ 3 |
| Số thứ tự | 2<sup>nd</sup> | 2nd với chữ nâng lên |
| Ký hiệu chú thích | text<sup><a href="#n1">1</a></sup> | Số 1 nâng lên, bấm được |
| Công thức hóa học | C<sub>6</sub>H<sub>12</sub>O<sub>6</sub> | Glucose |
| Chỉ số hoặc cơ số | x<sub>1</sub>, log<sub>2</sub> | Số 1 và 2 hạ xuống |
| Nhãn hiệu | Brand<sup>TM</sup> hoặc Brand™ | TM nâng lên |
Hãy dùng các thẻ này khi vị trí là một phần của ý nghĩa: m<sup>2</sup> và m2 là hai thứ khác nhau. Với chữ nhỏ chỉ vì cách trình bày (một nhãn, một huy hiệu), hãy dùng CSS.
Chú thích với sup
Ký hiệu chú thích là một liên kết chỉ số trên trỏ tới ghi chú ở cuối trang. Đặt cho mỗi ghi chú một id và trỏ liên kết tới đó:
Click một con số để nhảy tới ghi chú của nó, và "Back" để quay lại. Bỏ gạch chân ở liên kết nhỏ giúp đoạn văn gọn gàng, trong khi màu liên kết vẫn cho biết nó bấm được.
Giữ khoảng cách dòng đều nhau
Theo mặc định, <sup> hoặc <sub> có thể làm dòng chứa nó cao hơn các dòng xung quanh, nên một đoạn văn có vài số mũ trông giãn dòng không đều. Đặt line-height: 0 cho chúng sẽ khắc phục điều này:
Khung màu xám cao hơn vì dòng thứ hai và thứ tư bị đẩy giãn ra. Trong khung màu xanh lá, mọi dòng đều cao bằng nhau. Thêm quy tắc đó vào stylesheet gốc của bạn một lần là xong.
Ký tự Unicode và MathML
Với vài trường hợp phổ biến có sẵn ký tự: ² (²), ³ (³), ¹ (¹), ™ (™) và ½ (½). Chúng không cần thẻ và không ảnh hưởng đến chiều cao dòng, nhưng chỉ có cho một số chữ số và chữ cái. Công cụ tạo chữ nhỏ cho thấy tất cả các chữ cái chỉ số trên mà Unicode có.
Với công thức thật sự (phân số, căn, số mũ của số mũ), hãy dùng MathML, được các trình duyệt hiện nay hiển thị sẵn:
<msup> nhận một cơ số và một số mũ; <msub> làm tương tự cho chỉ số dưới. Với một số mũ đơn lẻ trong câu, <sup> đơn giản hơn.
Lỗi thường gặp
- Dùng
<sup>để làm chữ nhỏ. Thẻ này còn nâng chữ lên và cho người đọc biết đó là chỉ số trên. Dùngfont-sizecho chữ nhỏ. - Khoảng cách dòng không đều. Thêm
sup, sub { line-height: 0; }. - Viết
x^2hoặcH2Otrong văn bản hoàn chỉnh. Hãy dùngx<sup>2</sup>vàH<sub>2</sub>Ođể nội dung được đọc đúng. - Ký hiệu chú thích quá nhỏ để chạm. Trên điện thoại, một chữ số nâng lên là mục tiêu rất nhỏ. Thêm chút padding cho
sup a, hoặc đặt ghi chú gần đoạn văn.
Câu hỏi thường gặp
Làm sao viết chỉ số trên trong HTML?
Bọc phần chữ nâng lên trong <sup>: x<sup>2</sup> hiển thị x bình phương, 1<sup>st</sup> là một số thứ tự. Trình duyệt vẽ phần này nhỏ hơn và nâng lên trên đường cơ sở.
Làm sao viết chỉ số dưới trong HTML?
Dùng <sub>: H<sub>2</sub>O cho nước, x<sub>1</sub> cho một chỉ số. Phần này được vẽ nhỏ hơn và hạ xuống dưới đường cơ sở.
Làm sao viết x bình phương trong HTML?
Dùng x<sup>2</sup> hoặc ký tự có sẵn x², mà bạn cũng có thể gõ bằng entity ². Ký tự này đủ dùng cho bình phương và lập phương; <sup> dùng được cho mọi số mũ, như 2<sup>n+1</sup>.
Vì sao <sup> làm khoảng cách dòng không đều?
Phần chữ nâng lên có thể làm dòng chứa nó cao hơn các dòng khác trong đoạn văn. Sửa bằng sup, sub { line-height: 0; }, quy tắc này ngăn chúng làm tăng chiều cao của dòng.
Có thể dùng CSS thay cho <sup> không?
vertical-align: super cùng font-size nhỏ hơn trông giống hệt, nhưng <sup> và <sub> mang ý nghĩa: "m2" và "m<sup>2</sup>" là hai giá trị khác nhau. Hãy dùng thẻ khi vị trí nâng lên hay hạ xuống là một phần của nội dung.