<svg>
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
* Some parts of this feature may have varying levels of support.
<svg> は SVG の要素で、新しい座標系とビューポートを定義するコンテナーです。これは SVG 文書の最も外側の要素として使用されますが、SVG または HTML 文書の中に SVG の断片を埋め込むためにも使用できます。
メモ:
xmlns 属性は SVG 文書の最も外側の svg 要素、または XML シリアライズによる HTML 文書内にのみ必要です。内部の svg 要素や HTML シリアライズによる HTML 文書の内部には不要です。
使用コンテキスト
属性
baseProfile非推奨;-
この文書が要求する最小の SVG 言語プロファイルです。 値の型: <string>、デフォルト値: なし、アニメーション: 不可
height-
矩形ビューポートで表示される高さです。(それ自身の座標系の高さではありません。) 値の型: <length>|<percentage>、デフォルト値:
auto、アニメーション: 可 preserveAspectRatio-
svgフラグメントが、異なるアスペクト比での表示時にどう変形されるか。 値の型: (none|xMinYMin|xMidYMin|xMaxYMin|xMinYMid|xMidYMid|xMaxYMid|xMinYMax|xMidYMax|xMaxYMax) (meet|slice)?、デフォルト値:xMidYMid meet、アニメーション: 可 version非推奨;-
要素の内部の内容にどのバージョンの SVG が用いられるか。 値の型: <number>、デフォルト値: none、アニメーション: 不可
viewBox-
現在の SVG の断片の SVG ビューポート座標。 値の型: <list-of-numbers>。、デフォルト値: none、アニメーション: 可
width-
矩形ビューポートで表示される幅。(それ自身の座標系の幅ではありません。) 値の型: <length>|<percentage>、デフォルト値:
auto、アニメーション: 可 x-
SVG コンテナーが表示される x 座標。最も外側の
svg要素では効果ありません。 値の型: <length>|<percentage>、デフォルト値:0、アニメーション: 可 y-
SVG コンテナーが表示される y 座標。最も外側の
svg要素では効果ありません。 値の型: <length>|<percentage>、デフォルト値:0; アニメーション: 可
メモ:
SVG2 から、x, y, width, height は、幾何プロパティです。すなわち、これらの属性は CSS プロパティとしても用いることができます。
DOM インターフェイス
この要素は SVGSVGElement インターフェイスを実装しています。
例
>入れ子の svg 要素
この例では、入れ子になった svg 要素には xmlns 属性が必要ないことを示しています。
<svg
viewBox="0 0 300 100"
xmlns="http://www.w3.org/2000/svg"
stroke="red"
fill="grey">
<circle cx="50" cy="50" r="40" />
<circle cx="150" cy="50" r="4" />
<svg viewBox="0 0 10 10" x="200" width="100">
<circle cx="5" cy="5" r="4" />
</svg>
</svg>
動的なビューポートの単位の使用
この例では、 svg 要素の height 属性と width 属性は、ビューポートの幅または高さの小さい方の 60% に相当する動的ビューポート値 60vmin を使用して設定されます。
<svg
viewBox="0 0 400 400"
xmlns="http://www.w3.org/2000/svg"
height="60vmin"
width="60vmin">
<rect x="0" y="0" width="50%" height="50%" fill="tomato" opacity="0.75" />
<rect
x="25%"
y="25%"
width="50%"
height="50%"
fill="slategrey"
opacity="0.75" />
<rect x="50%" y="50%" width="50%" height="50%" fill="olive" opacity="0.75" />
<rect
x="0"
y="0"
width="100%"
height="100%"
stroke="cadetblue"
stroke-width="0.5%"
fill="none" />
</svg>
iframe の寸法を変更するには、右下の赤い点線の枠のサイズを変更してみてください。
仕様書
| Specification |
|---|
| Scalable Vector Graphics (SVG) 2> # NewDocument> |
ブラウザーの互換性
Loading…