YouTubeのEmbedタグをXHTML valid に

Youtubeのソースをそのまま貼り付けるとvalidなソースにはならない。って言うほど、validなソースに出来てるわけではないけど。。まぁ、ちょっと気になってたんで、調べました。

Youtubeの元々のソース

<object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/7_6B6vwE83U"></param><embed src="http://www.youtube.com/v/7_6B6vwE83U" type="application/x-shockwave-flash" width="425" height="350"></embed></object>

まずparam要素については空要素なので、終了タグを使わずに開始タグの終わりに半角スペースと"/"を挿入する。で、embed要素に関してはXHTMLで定義されていないみたいなので、object要素にdata属性を追加し、属性値にembed要素のsrc属性値を記述。もう一つ、object要素にtype属性を追加し、属性値にembed要素のtype属性値(application/x-shockwave-flash)を記述。以下のようになると思いますので、これでOKです。

<object type="application/x-shockwave-flash" style="width:425px; height:350px;" data="http://www.youtube.com/v/7_6B6vwE83U"><param name="movie" value="http://www.youtube.com/v/7_6B6vwE83U" /></object>
2007年06月