Для комментариев зарегистрироваться или войти
Либо используйте ваш Open_ID, например аккаунт гугл, яндекс или ЖЖ
 

09 июля 2009 :Как валидно вставить Flash

Я лично предпочитаю не использовать флеш ни за что и никогда, это моя личная позиция и я никому её не навязываю. Тем не менее иногда его всё-таки приходится использовать на сайтах. Как и все я люблю чтобы в коде всё было аккуратно, в частности валидно. На беду код который часто используют, и который генерируется самим флешом для вставки не проходит проверку валидатором, пример:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="484" height="205">
<param name="movie" value="/files/header.swf">
<param name="quality" value="high">
<param name="wmode" value="opaque">
<embed src="/files/header.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="484" height="205"></embed>
</object>

Сиреневым выделено то, что по мнению Html Validator'а не валидно (это такой классный плагин который я нашла вчера, вот бывает что с утра не думала что мне это нужно, а оно уже есть =)).

Универсальный тег Object по мнению w3c призван заменить вставку семантически непонятных тегов типа <embed> и <iframe>. Подробно использовании его в качестве замены iframe я расскажу завтра, а сейчас скажу некоторые особенности. В частности этот тег должен иметь указание на тип подключаемого документа, т.е. правильно будет перенести type="application/x-shockwave-flash" из embed туда. Параметры classid и codebase - это нужно только старым версиям эксплорера, так что уберём их вообще. Ссылку на файл перенесём в объект в атрибут data. В итоге у нас получился очень красивый код.

<object type="application/x-shockwave-flash" data="/files/menu.swf" width="484" height="98">
<param name="movie" value="/files/menu.swf">
<param name="quality" value="high">
<param name="wmode" value="opaque"></object>

Если всё таки необходимо добавить проверку на версию флеша, можно использовать код как здесь: http://printf.ru/wiki/Embedding_Flash:

<!--[if false]> -->
<object type="application/x-shockwave-flash"
        data="путь/к/swf" width="ширина" height="высота">
<!-- <![endif]-->
<!--[if IE]>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
        codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,115,0"
        width="ширина" height="высота">
    <param name="movie" value="путь/к/swf" />
<![endif]-->
    альтернативный текст
</object>

я буду очень признательна если вы прокоментируете эту статью

Комментарии:


Чтобы оставить комментарий нужно зарегистрироваться или войти.
Либо волшебно используйте ваш логин в Google, Яндекс, рамблер или ЖЖ чтобы войти через Open_ID
Оставить комментарий как:
Гость:
Сообщение:
Подпишитесь на статьи через RSS

15 самых популярных статей: