使用css实现四个边框切角
[CSS语法]clip-path
clip-path表示剪裁路径,也就是从某个物体上剪切一块内容。比如在图片上根据需要剪切一部分需要留下的区域。
这里涉及到两个概念: 裁剪路径clipping path,裁剪区域clipping region。
裁剪路径就是用来裁剪元素的路径,标记了需要裁剪的区域。可以是任意形状。
裁剪区域就是裁剪路径闭合后所包含的全部区域。
浏览器会裁剪掉裁剪区域以外的内容,包括: 背景,内容,边框,阴影等,另外也不会捕获裁剪区域之外的hover click等事件。
clip-path语法
clip-path:
clip-source 可以是内部,外部的SVG的clipPath元素的URL引用
basic-shape使用一些基本形状函数创建的一个形状 circle() ellipse() inset() polygon()
geometry-box可选参数,和basic-shape一起使用,可以为其裁剪工作提供参考盒子。
浏览器前缀 -webkit-
注意:
使用clip-path绘制形状要从同一个方向进行绘制,如果是顺时针就一律顺时针。
示例一
使用polygon来绘制菱形
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50% )
polygon指定了四个顶点。XY坐标轴分别规定X轴正方向向右,Y轴正方向向下。
示例二
使用geometry-box来裁剪元素
geometry-box一共有7个值,分别是margin-box, border-box, padding-box, content-box, fill, stroke, view-box等
其中fill stroke view-box是运用在SVG元素上的
margin-box, border-box, padding-box, conent-box是运用在HTML元素上的
例如 clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%) margin-box
CSS clip-path maker提供了很多常用clip-path
bennettfeely.com/clippy/
- Triangle 三角形
clip-path: polygon(50% 0%, 100% 100%, 0% 100%)
- Rhombus 菱形
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0 50%)
详情可查看:https://www.cnblogs.com/joyjoe/p/6917036.html