stroke-miterlimit
**stroke-miterlimit
** CSS 属性定义了当用于 SVG 元素描边路径角处的形状为斜接连接时,斜接长度与 stroke-width
之比的限制。如果超过此属性定义的限制,则连接将从 miter
转换为 bevel
,从而使角看起来被截断。
此属性适用于任何生成 SVG 角的形状或文本内容元素(有关完整列表,请参阅 stroke-miterlimit),但作为继承属性,它可以应用于诸如 <g>
之类的元素,并仍然对后代元素的描边产生预期效果。如果存在,它将覆盖元素的 stroke-miterjoin
属性。
描述
当两条线段以锐角相交且已为 stroke-linejoin
指定了斜接连接,或者如果它们默认为该值时,斜接可能会扩展到远远超出描边路径的线宽之外。stroke-miterlimit
比例用于定义一个限制,超过该限制,连接将从斜接转换为斜角。
斜接长度(斜接外端点与内角之间的距离)与 stroke-width
的比率与用户空间中线段之间的角度 (theta) 直接相关,公式如下
例如,1.414
的斜接限制会将斜接转换为 theta 值小于 90 度的斜角,4.0
的限制会将它们转换为大约 29 度以下的 theta,而 10.0
的限制会将它们转换为大约 11.5 度以下的 theta。
语法
/* number values */
stroke-miterlimit: 1;
stroke-miterlimit: 3.1416;
/* Global values */
stroke-miterlimit: inherit;
stroke-miterlimit: initial;
stroke-miterlimit: revert;
stroke-miterlimit: revert-layer;
stroke-miterlimit: unset;
Values
<number>
-
任何等于或大于
1
的正实数;低于该值的值无效。初始值为4
。
正式定义
正式语法
stroke-miterlimit =
<number>
示例
各种斜接限制
此示例演示了 stroke-miterlimit
属性的不同值的效用。
HTML
我们设置了五个多段路径,所有路径都使用黑色描边,宽度为 1,并且没有填充。每个路径都创建一系列山脉符号,从左(浅角)到右(极端角)。
<svg viewBox="0 0 39 36" xmlns="http://www.w3.org/2000/svg">
<g stroke="black" stroke-width="1" fill="none">
<path
d="M1,5 l7 ,-3 l7 ,3
m2,0 l3.5 ,-3 l3.5 ,3
m2,0 l2 ,-3 l2 ,3
m2,0 l0.75,-3 l0.75,3
m2,0 l0.5 ,-3 l0.5 ,3" />
<path
d="M1,12 l7,-3 l7,3 m2,0 l3.5,-3 l3.5,3 m2,0 l2,-3 l2,3 m2,0 l0.75,-3 l0.75,3 m2,0 l0.5,-3 l0.5,3" />
<path
d="M1,19 l7,-3 l7,3 m2,0 l3.5,-3 l3.5,3 m2,0 l2,-3 l2,3 m2,0 l0.75,-3 l0.75,3 m2,0 l0.5,-3 l0.5,3" />
<path
d="M1,26 l7,-3 l7,3 m2,0 l3.5,-3 l3.5,3 m2,0 l2,-3 l2,3 m2,0 l0.75,-3 l0.75,3 m2,0 l0.5,-3 l0.5,3" />
<path
d="M1,33 l7,-3 l7,3 m2,0 l3.5,-3 l3.5,3 m2,0 l2,-3 l2,3 m2,0 l0.75,-3 l0.75,3 m2,0 l0.5,-3 l0.5,3" />
</g>
</svg>
CSS
我们对路径应用越来越大的stroke-miterlimit
值,使得对于第一个路径,只有第一个(最左侧)子路径是斜接的;对于第二个路径,前两个子路径是斜接的;以此类推,直到第五个路径,所有五个子路径都是斜接的。
path:nth-child(1) {
stroke-miterlimit: 1.1;
}
path:nth-child(2) {
stroke-miterlimit: 1.4;
}
path:nth-child(3) {
stroke-miterlimit: 1.9;
}
path:nth-child(4) {
stroke-miterlimit: 4.2;
}
path:nth-child(5) {
stroke-miterlimit: 6.1;
}
规范
规范 |
---|
CSS Fill and Stroke 模块 Level 3 # stroke-miterlimit |
浏览器兼容性
BCD 表格仅在浏览器中加载