マークアップのあれこれ#4

html5MIMEタイプの初歩

html5shiv.js

読み込ませると古いIEでもhtml5の要素が認識できるようになるらしい。
個人的にはそういうのは切り捨てていいと思うんだけどな
(まあなんかの機会があったら覚えとこ)

img/video/audio

(imgしか知らない)

imgのalt属性

altの意義は画像の説明ではなく、画像そのものの代替テキストです。
(言われてみればalternativeの略なのかな)

video/audio

html5は動画をimgのように組み込める。時代は変わったな
基本的にこれらもimgのようにsrcでソース指定してwidthとheightでサイズを指定できる。

controls コントローラ部分を表示する
loop ループ再生
autoplay バッファがある程度溜まってから再生
<video src="hackIsChocolate.mp4" controls>
	<p>html5に対応したブラウザで表示してください</p>
</video>

みたいに要素には対応していないブラウザへの注意文を入れるのがいいらしい。

source

あらゆる形式のデータを読み込ませるようにする黒魔術。
より先に指定されているデータで再生可能なものだけが再生される。なんかに使えそうな性質だ

type属性にMIMEタイプを指定する。

<video controls>
	<source src="hackIsSoftToy.mp4" type="video/mp4">
	<source src="hackIsFamily.org" type="video/ogg"> 
</video>

MIMEタイプ

せっかくなのでおさらいを。
一応前にapacheいじってた時の知識があるけども
とはいえ、mozillaの解説がまんま詳しいのでこれを読むだけで良さそうだ。

  • Webでは拡張子はまったく意味を持たず、ドキュメントの種類と紐付けられるのはMIMEタイプ
    • 「拡張子を評価してるのはWindowsだけ」とかいう煽り
    • ブラウザはMIMEタイプからどのアクションを起こすかを判定する
  • type/subtype の形で表現される
    • text/plain, video/mp4 とか

ちなみに、明らかに異なるMIMEタイプを指定してもブラウザが賢く立ち回ってくれることがあります。
まさに先日、.jsをtext/cssで読ませたらchromeのコンソールから「形式ちげーけどjsとして解釈するぞ」みたいに怒られました。(うろ覚え)
(上述のmozillaのページのMIMEスニッフィングに当たるかな)

関係ない話

主にライセンスのために一応残しておいたVS2013 Expressを削除しました。
あと、VS2017 Communityを導入。最近C#やってないけどモチベは少しずつ戻ってきてるので。
一つ作りたいものがあるのでそれを作ろう。

VS2017はいい話をよく聞きますね。次に触るのが楽しみです。
(VS2015ですら感動したものですが)
(先輩にゲーム作れ作れ言われるのでしばらくしたらUnity触ってみたいな)