CSS ellipse() 函数

定义和用法

CSS 的 ellipse() 函数定义了一个具有两个半径 x 和 y 的椭圆。

ellipse() 函数通常与 clip-path 属性和 shape-outside 属性一起使用。

实例

例子 1

将图像裁剪为 x 半径为 50%、y 半径为 30% 的椭圆:

img {
  clip-path: ellipse(50% 30%);
}

亲自试一试

例子 2

将图像裁剪为 x 半径为 50%、y 半径为 30% 的椭圆,并将椭圆的中心定位到右侧:

img {
  clip-path: ellipse(50% 30% at right);
}

亲自试一试

例子 3

使用 clip-pathellipse() 实现动画效果:

#myDIV {
  width: 100px;
  height: 100px;
  background-color: coral;
  color: green;
  animation: mymove 5s infinite;
  clip-path: ellipse(80% 50%);
}

@keyframes mymove {
  50% {clip-path: ellipse(30% 10%);}
}

亲自试一试

例子 4

结合使用 ellipse()clip-pathshape-outside

img {
  float: left;
  clip-path: ellipse(50% 30%);
  shape-outside: ellipse(55% 35%);
}

亲自试一试

CSS 语法

ellipse(xy-radius at position)
描述
xy-radius

必需。指定两个半径 x 和 y。可以是以下值之一:

  • 长度值
  • 百分比
  • closest-side:使用从形状中心到参考框最近边的距离
  • farthest-side:使用从形状中心到参考框最远边的距离
at position

可选。指定椭圆的中心位置。

可以是长度值、百分比值,也可以是 left、right、top 或 bottom 等值。

默认值为 center。

技术细节

版本: CSS Shape Module Level 1

浏览器支持

表格中的数字表示首个完全支持该函数的浏览器版本。

Chrome Edge Firefox Safari Opera
37 79 54 10.1 24

相关页面

参考:CSS clip-path 属性

参考:CSS shape-outside 属性

参考:CSS circle() 函数

参考:CSS inset() 函数

参考:CSS polygon() 函数