[CSS揭秘]自适应的椭圆

技巧:利用border-radius属性产生圆,椭圆等形状

border-radius按照顺序依次设定border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius

没有继承性,适用于CSS动画。border-radius可以单独指定水平半径和垂直半径,中间用一个斜杠/分隔。

当任意两个相邻圆角的半径之和超过border-box的尺寸时,用户代理必须按照比例减小各个边框半径所使用的值,直到它们不会互相重叠。

border-radius不仅可以接受长度值,还可以接受百分比值。这个百分比是基于元素的尺寸进行解析的,垂直半径的百分比是相对元素的高度进行解析,水平半径的百分比是相对于元素的宽度进行解析。

本质理解:border-radius是对元素的border-box进行切圆角处理,边框外侧的拐角作为切圆角的基准,边框内侧的圆角会稍微小一些。严格来说是max(0, [border-radius]-[border-width])

常规图形

1.朝上的半椭圆

 

border-radius: 50% / 100% 100% 0 0;

当某一个方向的半径为0时,另外一个方向的半径可以是任意值。

2. 朝左的半椭圆

 

border-radius: 100% / 50% 0 0 50%;

3. 四分之一的椭圆

 

border-radius: 100% 0 0 0;

 

作品欣赏

http://simurai.com/archive/buttons

展示了各种奇妙的形状

参考案例地址

play.csssecrets.io/quarter-ellipse

play.csssecrets.io/half-ellipse

play.csssecrets.io/ellipse

转载于:https://www.cnblogs.com/joyjoe/p/6115729.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值