CSS Aural Media Properties - Tổng quan
Các thuộc tính CSS cho **Aural Media** (phương tiện âm thanh) dùng để kiểm soát cách tài liệu được đọc lên tiếng bởi screen readers / voice browsers. Dưới đây là danh sách đầy đủ 19 thuộc tính theo CSS Speech Module.
Danh sách 19 thuộc tính
| # | Thuộc tính | Chức năng | Giá trị mẫu |
|---|---|---|---|
| 1 | azimuth |
Vị trí âm thanh ngang (trái/phải/phía trước/sau) | center, left, 30deg, behind |
| 2 | elevation |
Vị trí âm thanh dọc (trên/dưới/ngang tai) | level, above, below, 45deg |
| 3 | cue-after |
Âm thanh phát sau khi đọc xong phần tử | url("end.wav"), none |
| 4 | cue-before |
Âm thanh phát trước khi đọc phần tử | url("start.wav"), none |
| 5 | cue |
Shorthand cho cue-before + cue-after | url("ding.wav") |
| 6 | pause-after |
Khoảng lặng sau khi đọc xong | 500ms, 20% |
| 7 | pause-before |
Khoảng lặng trước khi đọc | 300ms, 15% |
| 8 | pause |
Shorthand cho pause-before + pause-after | 200ms, 100ms 200ms |
| 9 | pitch |
Độ cao trung bình của giọng (tần số) | medium, 120Hz, x-high |
| 10 | pitch-range |
Biên độ dao động độ cao (biểu cảm) | 50, 0 (monotone), 100 |
| 11 | play-during |
Âm thanh nền khi đang đọc nội dung | url("bg.mp3") mix repeat, auto, none |
| 12 | richness |
Độ giàu/sáng của giọng (timbre) | 50 (mặc định), 0-100 |
| 13 | speak |
Có đọc không, đọc kiểu gì | normal, none, spell-out |
| 14 | speak-numeral |
Cách đọc số | digits (1-2-3), continuous (một trăm hai mươi ba) |
| 15 | speak-punctuation |
Cách đọc dấu câu | code (đọc tên dấu), none (bỏ qua) |
| 16 | speech-rate |
Tốc độ nói (từ/phút) | medium, fast, 150, faster |
| 17 | stress |
Độ nhấn mạnh "local peaks" trong ngữ điệu | 50 (mặc định), 0-100 |
| 18 | voice-family |
Danh sách ưu tiên giọng đọc | "Vietnamese Female", "Microsoft An", female |
| 19 | volume |
Âm lượng trung vị | medium, 50, silent, loud |
Ví dụ stylesheet aural hoàn chỉnh
@media speech {
/* Reset cơ bản */
* {
voice-family: "Vietnamese Female", "Microsoft An", female;
speech-rate: medium;
pitch: medium;
richness: 50;
stress: 50;
volume: medium;
}
/* Cấu trúc tài liệu */
h1 {
pause-before: 1s; pause-after: 500ms;
cue-before: url("section-start.wav");
pitch: x-high; stress: 80; richness: 70;
}
h2 { pause-before: 800ms; pitch: high; stress: 70; }
h3 { pause-before: 500ms; pitch: medium; }
/* Danh sách */
li { pause-before: 200ms; }
li::before { content: "Mục "; speak: normal; }
/* Code/Technical */
code, pre, kbd, samp {
speak: spell-out;
speech-rate: slow;
voice-family: monospace;
}
/* Số liệu */
.price { speak-numeral: continuous; } /* "một trăm ngàn" */
.phone { speak-numeral: digits; } /* "một không không..." */
/* Trích dẫn */
blockquote {
play-during: url("quote-bg.wav") mix;
azimuth: left; elevation: above;
}
q { azimuth: right; }
/* Bỏ qua */
.skip-speech { speak: none; }
.silent { volume: silent; }
}
Lưu ý quan trọng
- Chỉ hoạt động trong
@media speechhoặc user-agent hỗ trợ speech - Hầu hết thuộc tính **không có hiệu lực** trên trình duyệt web visual thông thường
- Để accessibility web thực tế: ưu tiên HTML semantic + ARIA hơn CSS Speech
- CSS Speech Module Level 1: W3C Candidate Recommendation (chưa hoàn thiện hoàn toàn)