cy

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

cyCSS のプロパティで、 SVG の <circle> または <ellipse> 要素の中心の Y 座標を定義します。存在する場合、その要素の cy 属性を上書きします。

メモ: SVG の <radialGradient> 要素は cx 属性に対応していますが、この cy プロパティは <svg> の中に含まれている <circle> および <ellipse> 要素にのみ適用されます。この属性は <radialGradient> 、その他の SVG 要素、 HTML の要素や擬似要素には適用されません。

構文

css
/* length and percentage values */
cx: 20px;
cx: 20%;

/* Global values */
cx: inherit;
cx: initial;
cx: revert;
cx: revert-layer;
cx: unset;

<length> および <percentage> 値で、円または楕円の垂直方向の中心を記述します。

<length>

絶対長または相対長として、 CSS の <length> データ型で許可されている任意の単位で表現できます。負の値は無効です。

<percentage>

パーセント値は、現在の SVG ビューポートの高さを参照します。

公式定義

初期値0
適用対象<ellipse> and <circle> elements in <svg>
継承なし
パーセント値refer to the height of the current SVG viewport
計算値指定されたパーセント値または絶対的な長さ
アニメーションの種類計算値の型による

形式文法

cy = 
<length-percentage>

<length-percentage> =
<length> |
<percentage>

円および楕円の Y 軸座標の定義

この例では、 SVG には、同一の <circle> 要素と同一の <ellipse> 要素が 2 つずつ含まれます。それらの cy 属性値はそれぞれ、 50150 です。

html
<svg xmlns="http://www.w3.org/2000/svg">
  <circle cx="50" cy="50" r="30" />
  <circle cx="50" cy="50" r="30" />
  <ellipse cx="150" cy="50" rx="20" ry="40" />
  <ellipse cx="150" cy="50" rx="20" ry="40" />
</svg>

CSS を使用して、最初の円と最初の楕円のみスタイル設定し、それらの双子図形には既定のスタイルを使用できるようにします(fill は既定で黒)。 cy プロパティを使用して SVG の cy 属性の値を上書きし、さらに fillstroke を与えて、各ペアの最初の図形を双子と区別します。 ブラウザーは、既定では SVG 画像を幅 300px、高さ 150px でレンダリングします。

css
svg {
  border: 1px solid;
}

circle:first-of-type {
  cy: 30px;
  fill: lightgreen;
  stroke: black;
}
ellipse:first-of-type {
  cy: 100px;
  fill: pink;
  stroke: black;
}

スタイル設定された円の中心は、 SVG ビューポートの上端から 30px の距離にあり、スタイル設定された楕円の中心は、上端から 180px の距離にあります。これは、 CSS の cy プロパティ値で定義されているとおりです。スタイル設定されていない図形の中心は、 SVG ビューポートの上端から 50ox150px の距離にあります。これは、 SVG の cy 属性値で定義されているとおりです。

Y 軸座標をパーセント値で設定

この例では、前回の例と同じマークアップを使用します。唯一の違いは、 CSS の cy プロパティ値です。この場合、 30%50% のパーセント値を使用しています。

css
svg {
  border: 1px solid;
}

circle:first-of-type {
  cy: 30%;
  fill: lightgreen;
  stroke: black;
}
ellipse:first-of-type {
  cy: 50%;
  fill: pink;
  stroke: black;
}

この場合、円と楕円の中心の Y 軸座標は、それぞれ現在の SVG ビューポートの高さの 30%50% です。画像の高さは既定では 150px であるため、 cy の値は 45px120px に相当します。

仕様書

Specification
Scalable Vector Graphics (SVG) 2
# CY

ブラウザーの互換性

関連情報