欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

是什么?有什么用?

程序员文章站 2022-05-23 09:13:40
...
<basic-shape>是什么?有什么用?本篇文章给大家介绍在css中<basic-shape>是什么,作用有哪些,让大家了解<basic-shape>的使用。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

一、<basic-shape>的基本介绍

1、<basic-shape>是什么?

<basic-shape>是一种表现基础图形的CSS数据类型,作用于clip-path 与 shape-outside 属性中。【相关视频教程推荐:css3教程

<basic-shape>数据类型可以由基本形状函数指定,即可以使用基本形状函数来定义基本形状,请参阅下面的“基本形状函数”部分,列出可能的形状函数值及其简单描述。

然后将基本形状作为值传递给属性(如shape-outside属性或clip-path属性),这些属性用于将形状应用于元素以更改其周围的内容流,或将元素剪切到分别定义形状。

2、形状的参考框

除了元素的高度和宽度之外,元素的框模型框:边距框(margin-box),内容框(content-box),填充框(padding-box)和边框(border-box),也可用作参考来指定元素上的形状范围。参考框可以是四个框中的任何一个。

当把<basic-shape>用于定义形状时,引用框由使用<basic-shape>值(基本形状函数)的每个属性定义(请参阅下面的示例部分)。基本形状的坐标系的原点位于参考框的左上角,x轴向右移动,y轴向下延伸。以百分比表示的所有长度均从参考盒的使用尺寸中解析出来(百分比定义的长度将通过相关盒模型与使用的维度重定义)。如果未指定引用框,则边框将用作clip-path属性的引用框,并且边框用于属性中使用的形状shape-outside。

二、基本形状函数

以下为当前<basic-shape>所支持的图形。所有<basic-shape>值都由函数表达式定义,并且遵循 属性值定义语法(value definition syntax)。

1、inset()

语法:

inset( <shape-arg>{1,4} [round <border-radius>] )

说明:

inset()函数定义了一个插入矩形。

它需要1~4个偏移值,它们指向内部参考框边缘(上,右,下与左边界和顶点)的偏移量。这些指定了插入矩形在元素内的位置。

可选参数<border-radius>用于定义插进长方形顶点的圆弧角度。

2、circle()

circle( [<shape-radius>]? [at <position>]? )

circle()函数定义了一个插入圆

<shape-radius> 参数代表了 r, 即圆形的半径, 不接受负数作为该参数的值。

<position> 参数定义了圆心的位置。省缺值为盒模型的中心。

3、ellipse()

ellipse( [<shape-radius>{2}]? [at <position>]? )

ellipse()函数定义了一个椭圆;

<shape-radius> 参数可以有两个值,分别为了 rx 与 ry,其中 rx 代表了x轴方向的半径, ry代表了y轴方向的半径;该参数不接受负数值。

<position>参数定义了椭圆形圆心的位子。其省缺值为盒模型的中心。

4、polygon()

polygon( [<fill-rule>,]? [<shape-arg> <shape-arg>]# )
<shape-arg> = <length> | <percentage>

polygon()函数定义了一个多边形

<fill-rule> 代表了填充规则( filling rule ),即,如何填充该多边形。 可选值为 nonzero 和 evenodd。 该参数的省缺值为 nonzero。

三、基本形状说明

基本形状的计算值

基本形状函数中的值按指定计算,但有例外,如:

1、包含省略的值并计算其默认值。

2、一个<position>值circle()或ellipse()计算为左上角原点的一对偏移(水平然后垂直),每个偏移作为绝对长度和百分比的组合给出。

3、一<border-radius>中值inset()计算为所有八个的扩展列表<length>或百分比值。

形状的引用框被定义为将这些形状作为值的属性的一部分。

基本形状的插值(形状之间的动画)

对于在一个基本形状和第二个基本形状之间进行插值,将应用以下规则。shape函数中的值作为简单列表插入。列表值在可能的情况下插入为长度,百分比或计算。如果列表值不是这些类型之一但是相同(例如nonzero在两个列表中找到相同的列表位置),那么这些值会进行插值。

1、两种形状必须使用相同的参考框。

2、如果两个形状都是相同的类型,那个类型是ellipse()或者circle(),并且没有一个半径使用closest-side或farthest-side关键字,则在形状函数中的每个值之间进行插值。

3、如果两个形状都是类型inset(),则在形状函数中的每个值之间进行插值。

4、如果两个形状都是类型polygon(),则两个多边形具有相同数量的顶点,并且使用相同<fill-rule>的形状函数中的每个值之间进行插值。

5、在所有其他情况下,未指定插值。

四、浏览器兼容性

<basic-shape>是什么?有什么用?

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

以上就是<basic-shape>是什么?有什么用?的详细内容,更多请关注其它相关文章!

相关标签: css3