Sách giáo khoa Tin học 12

Giải Vận dụng 2 trang 52 SGK Tin học 12

Bài 9. Tạo trang web, thử nghiệm và tối ưu hoá (HTML, định dạng văn bản)   Đã kiểm chéo

Đề bài

Hãy đưa ra cách định dạng một đoạn văn bản để được kết quả như sau:

Bài có hình vẽ / bảng trong sách — xem ở trang 52 · mở sách.
Mô tả hình bằng lời

Khung chứa một chuỗi dài gồm nhiều chữ số 0 lặp lại liên tiếp, được xếp theo hình gợn sóng (chữ cao thấp lên xuống luân phiên) chạy ngang khung. Đây là kết quả định dạng cần tái tạo bằng cách sử dụng các thẻ như <sub> và <sup> để đặt các chữ số 0 ở vị trí cao thấp xen kẽ tạo hiệu ứng sóng.

Lời giải

Phân tích yêu cầu

Kết quả cần đạt là một dãy dài các chữ số 0 giống nhau, nhưng được xếp cao – thấp xen kẽ để tạo thành hình gợn sóng chạy ngang. Trong HTML (phần định dạng văn bản ở Bài 9), ta có hai thẻ chuyên để đặt kí tự lệch khỏi dòng cơ sở (baseline):

- Thẻ `<sup>...</sup>` (superscript): đưa kí tự lên cao hơn dòng chữ bình thường.
- Thẻ `<sub>...</sub>` (subscript): hạ kí tự xuống thấp hơn dòng chữ bình thường.

Vì vậy chỉ cần viết liên tiếp nhiều chữ số 0 và lần lượt bọc chúng bằng `<sup>` rồi `<sub>` xen kẽ thì các chữ số sẽ lên – xuống luân phiên, tạo đúng hiệu ứng sóng.

a) Ý tưởng định dạng

Lấy một chữ số 0 ở vị trí cao (bọc `<sup>`), rồi một chữ số 0 ở vị trí thấp (bọc `<sub>`), lặp đi lặp lại cặp đó nhiều lần. Có thể chèn thêm một chữ 0 ở dòng cơ sở (không bọc thẻ) giữa hai vị trí để sóng chuyển lên – xuống mượt hơn:

> cao → (cơ sở) → thấp → (cơ sở) → cao → …

b) Mã HTML minh hoạ

Cách gọn (chỉ dùng hai mức cao – thấp):

```html
<p>
<sup>0</sup><sub>0</sub><sup>0</sup><sub>0</sub><sup>0</sup><sub>0</sub><sup>0</sup><sub>0</sub><sup>0</sup><sub>0</sub><sup>0</sup><sub>0</sub>
</p>
```

Cách cho sóng mượt hơn (xen thêm chữ 0 ở dòng cơ sở giữa mỗi lần lên – xuống):

```html
<p>
0<sup>0</sup>0<sub>0</sub>0<sup>0</sup>0<sub>0</sub>0<sup>0</sup>0<sub>0</sub>0<sup>0</sup>0<sub>0</sub>0
</p>
```

Muốn sóng dài hơn thì chỉ việc viết tiếp các cặp `<sup>0</sup> ... <sub>0</sub>` cho đến khi đầy khung.

c) Giải thích hoạt động

Khi trình duyệt hiển thị đoạn trên:

- Mỗi chữ 0 nằm trong `<sup>` được nâng lên cao,
- Mỗi chữ 0 nằm trong `<sub>` bị hạ xuống thấp,
- Các chữ 0 còn lại (nếu có) nằm ở dòng giữa.

Nhờ thế dãy chữ số 0 giống hệt nhau sẽ nhấp nhô cao – thấp liên tục, cho ra đúng hình gợn sóng như đề yêu cầu.

Kiểm tra lại: dãy chỉ gồm toàn chữ số 0 (đúng yêu cầu "chuỗi các chữ số 0"), và nhờ `<sup>`/`<sub>` đặt xen kẽ nên tạo được hiệu ứng sóng — đạt kết quả cần tái tạo.

Đáp số

Dùng hai thẻ định dạng văn bản HTML là <sup> (nâng chữ lên cao) và <sub> (hạ chữ xuống thấp), bọc xen kẽ các chữ số 0 liên tiếp, ví dụ: 0<sup>0</sup>0<sub>0</sub>0<sup>0</sup>0<sub>0</sub>… để các chữ số 0 lên – xuống luân phiên tạo hình gợn sóng.

Lời giải do Thư viện nhà trường biên soạn, giải và kiểm chéo độc lập theo SGK 2026-2027.