zoukankan      html  css  js  c++  java
  • [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

  • 相关阅读:
    OpenGL Geometry Shader
    正向渲染路径细节 Forward Rendering Path Details
    Tessellation
    渲染路径-实时渲染中常用的几种Rendering Path
    ugui batches
    如何有效提升Unity Gear VR游戏性能
    Unity3D命令行Build
    手机游戏资源 特效 显存分析工具
    换装demo时美术遇到的问题详解
    Rigging a Versatile Weapon Bone for 3ds Max
  • 原文地址:https://www.cnblogs.com/joyjoe/p/6115729.html
Copyright © 2011-2022 走看看