HTML5でSVGを扱うときにxmlnsっているの?

SVGで描画するサンプルコードをネットで探していると以下のようにxmlns属性や、xlinkがついているものがあります。

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">

これはいったいなんなのだろう、必要なものなのか?と思い調べてみました。

xmlns、xmlns:xlinkは必要なのか

xmlnsってなに

そもそもxmlnsってなんだろうと思ったので調べてみました。

svgではxmlns属性を付与することができ、xmlnsは「XMLネームスペース (XML Name Space)」を意味しています。よくみれば英語の頭文字が使われてxmlnsとなっていることがわかります。
スペースというだけあって苗字のようなものとよく説明されていてリンクは基本固定だそうです。

xmlns:xlinkはめったに見かけませんがxmlns:xlinkは2つめのネームスペースといった感じだそうです。

HTML5では必要ない

xmlnsはXHTMLで描画する際の手法でHTML5で描画する場合は記述する必要はないのだそうです。XMLを使う環境でなければ基本的にはHTML5では必要なしとのことなので書かなくて良さそうですね。。

参考サイト:https://stackoverflow.com/questions/18467982/are-svg-parameters-such-as-xmlns-and-version-needed

HTML / CSS

Posted by Nakamoto