HTML Video là một phần tử HTML cho phép bạn nhúng và phát video trực tiếp trên trang web mà không cần sử dụng các plugin bên ngoài như Flash. Thẻ <video> hỗ trợ nhiều định dạng video và cung cấp nhiều thuộc tính để điều chỉnh trình phát video, mang lại trải nghiệm người dùng tốt hơn.
Bài viết này là một phần của chuỗi học HTML trên "codetuthub.com", cùng với các bài học hữu ích khác như HTML Audio, HTML Media Attributes, và HTML Multimedia.
1. Giới thiệu về thẻ <video>
Thẻ <video> trong HTML5 được sử dụng để nhúng video vào trang web. Nó có thể chứa nhiều thẻ <source>, giúp đảm bảo video được phát trên nhiều trình duyệt khác nhau bằng cách cung cấp các định dạng khác nhau.
Cú pháp
<video controls>
<source src="https://codetuthub.com/example/file_MP4_1920_18MG.mp4" type="video/mp4">
<source src="https://codetuthub.com/example/file_OGG_1920_13_3mg.ogg" type="video/ogg">
Trình duyệt của bạn không hỗ trợ thẻ video.
</video>Trong ví dụ này:
- Thuộc tính
controlscho phép hiển thị các điều khiển phát video như nút phát/tạm dừng, âm lượng và thanh tiến trình. - Thẻ
<source>chỉ định tệp video và định dạng của nó.
2. Các thuộc tính cơ bản của thẻ <video>
2.1 controls
Thuộc tính controls cho phép hiển thị giao diện điều khiển video trên trình duyệt, cho phép người dùng phát, tạm dừng và điều chỉnh âm lượng.
<video src="https://codetuthub.com/example/file_MP4_1920_18MG.mp4" controls></video>Khi có controls, người dùng sẽ thấy thanh điều khiển của trình phát video.
2.2 autoplay
Thuộc tính autoplay giúp video tự động phát khi trang được tải. Tuy nhiên, nhiều trình duyệt hiện đại có thể không cho phép tự động phát âm thanh mà không có sự tương tác của người dùng.
<video src="https://codetuthub.com/example/file_MP4_1920_18MG.mp4" autoplay controls></video>2.3 loop
Thuộc tính loop giúp video phát lặp lại liên tục.
<video src="https://codetuthub.com/example/file_MP4_1920_18MG.mp4" loop controls></video>2.4 muted
muted giúp tắt tiếng video mặc định khi trang tải.
<video src="https://codetuthub.com/example/file_MP4_1920_18MG.mp4" muted controls></video>2.5 preload
Thuộc tính preload kiểm soát cách video được tải trước khi người dùng nhấn phát. Các giá trị của preload bao gồm:
- auto: Tải toàn bộ video khi trang được tải.
- metadata: Chỉ tải thông tin cơ bản như thời gian video.
- none: Không tải video trước.
<video src="https://codetuthub.com/example/file_MP4_1920_18MG.mp4" preload="auto" controls></video>3. Sử dụng nhiều định dạng video
HTML Video hỗ trợ nhiều định dạng video, nhưng không phải trình duyệt nào cũng hỗ trợ tất cả định dạng. Do đó, bạn nên cung cấp nhiều nguồn khác nhau để đảm bảo tính tương thích.
<video controls>
<source src="https://codetuthub.com/example/file_MP4_1920_18MG.mp4" type="video/mp4">
<source src="https://codetuthub.com/example/file_OGG_1920_13_3mg.ogg" type="video/ogg">
Trình duyệt của bạn không hỗ trợ video.
</video>Trong ví dụ này, nếu trình duyệt không hỗ trợ .mp4, nó sẽ chuyển sang .ogg để đảm bảo video vẫn được phát.
4. JavaScript với HTML Video
Bạn có thể điều khiển video bằng JavaScript để tùy chỉnh thêm các tính năng. Một số phương thức và thuộc tính phổ biến bao gồm:
- play(): Phát video.
- pause(): Tạm dừng video.
- currentTime: Đặt hoặc lấy thời gian hiện tại của video (tính bằng giây).
- volume: Đặt hoặc lấy âm lượng của video (giá trị từ 0 đến 1).
Ví dụ điều khiển video bằng JavaScript
Câu lệnh INSERT INTO SELECT trong MySQL cho phép bạn chèn dữ liệu từ một bảng này sang bảng khác một cách nhanh chóng và...
Khám phá tất cả tính năng mới và cải tiến hiệu suất của PHP 8.4 tại CodeTutHub. Bài viết này giúp bạn nắm bắt các thay...
HTML là gì? Tìm hiểu HTML là gì và vai trò của HTML trong phát triển web. Bài viết giới thiệu các khái niệm cơ bản và...
Hướng dẫn chi tiết cách thêm CSS cho console.log trong JavaScript. Tìm hiểu console.log màu sắc, format console.log,...
Library vs Framework – Hiểu rõ sự khác nhau, so sánh chi tiết và ví dụ thực tế. Khi nào dùng library, khi nào dùng...
Khám phá 11 sai lầm chết người mà PHP developer hay mắc phải và cách tránh: SQL Injection, code spaghetti, không dùng...
Khám phá điểm mới trong PHP 8.5: pipe operator, array_first, fatal error stack trace, max_memory_limit… và các...
Vòng lặp for, while, do...while khác nhau như thế nào? Tìm hiểu cách chọn đúng loại vòng lặp cho từng tình huống trong...
