Làm thế nào để đưa flash vào website?

Khi nhìn tiêu đề bài viết này, có lẽ sẽ có khoảng 99% mọi người sẽ nghĩ đại loại như là “ặc, cái này thì có gì phải nói nhỉ?” hay “thằng này chắc bị khùng, cái này thì ai mà chẳng biết mà cũng phải nói”. Nhưng mà TKS thì nghĩ khác, và vì vậy TKS xin mọi người dành chút thời gian mà đọc tiếp vậy.
Như tất cả mọi người đều biết, trong Flash ta có thể xuất trực tiếp ra file html (mặc định là nhấn F12), và sau đó, để chèn Flash movie vừa mới tạo vào trang web, chúng ta chỉ đơn giản copy đoạn mã trong file html được tạo tự động bởi Flash. Và vì những việc như vậy là quá đơn giản, hầu hết các site trên internet có sử dụng Flash đều chứa đoạn mã kiểu như sau:

<center>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="500" height="450">
<param name="movie" value="{param}">
<param name="quality" value="high">
<embed src="{param}" allowFullScreen='true' quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="500" height="450"></embed>
</object>
</center>

Đoạn mã trên được lấy từ chính trang thietkeso.vn (cái logo xoay xoay ở trên ý).
Vấn đề là ở chỗ, đoạn mã trên chỉ phù hợp (valid) với HTML4.01 và hoàn toàn thất bại với xHTML 1.0 (cả Transitional và Strict) (bạn có thể dùng công cụ này để kiểm tra). Lí do là ở chỗ thẻ <embed> hoàn toàn không phải là một thẻ hợp lệ trong danh sách của W3C, nó không phải là một thẻ xHTML hay HTML. Tuy nhiên, nếu bạn bỏ thẻ <embed> đi, Flash movie của bạn vẫn chạy bình thường nhưng chỉ là trong IE hay Opera mà thôi còn Firefox thì không, hoàn toàn không. Không những thế, nếu trình duyệt của người dùng không hỗ trợ Flash, sẽ không có một nội dung thay thế nào xuất hiện, không có ý nghĩa gì với các search engine.
Một cách thích hợp hơn, hoàn toàn valid với xHTML và làm việc trên cả IE, Firefox, Opera (những browser khác thì mình không có điều kiện để test) và có cả nội dung để thay thế nếu browser không hỗ trợ Flash là thay thế đoạn mã trên như sau:

<!--[if !IE]> -->
<object type="application/x-shockwave-flash"
data="/vnfx_logo.swf" width="150" height="150">
<!-- <![endif]-->

<!--[if IE]>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"
width="150" height="150">
<param name="movie" value="/vnfx_logo.swf" />
<!--><!---->
<param name="loop" value="true" />
<param name="menu" value="false" />

<p>This is alternative content.</p>
</object>
<!-- <![endif]-->  

FOLLOW US

Leave a Reply

Your email address will not be published. Required fields are marked *