4
|
nonopolarity · 技术社区 · 14 年前 |
1
4
好吧,假设框阴影以一个框开始,与内容大小相同,具有指定的阴影颜色(为了论证,假设为黑色)。
两个 距离 传播 值将导致此框按指定的数量展开-因此 更大的 较小 而不是它的内容框。从视觉上看,扩散越高,阴影出现的距离越远(这给人一种错觉,盒子离投射阴影的表面有很长的距离)。 模糊值只是使边缘平滑地模糊到背景中,从阴影颜色淡入背景颜色。 HTH公司 |
2
1
我不是一个web/CSS程序员,但我需要一个类似CSS的框影算法,并决定找出它是如何工作的。 online box-shadow tool 用于下面的比较。
步骤1:矢量化缩放和平移
如图所示,a
水平/垂直偏移是不言自明的。 第二步:高斯模糊历史Mozilla开发人员davidbaron写了一篇关于cssboxshadow实现的详细文章 here 直到2011年,CSS模糊半径还没有标准的含义。它可以对应不同的算法 和 不同web浏览器中的参数:
这些历史性的差异可以解释这次会议的目的
由于标准化的原因,我预计这些带前缀的版本现在会被弃用,但可能会用于与旧浏览器的兼容性。 据男爵说,现在有一个 精确、标准定义
数学家可以把它展开成一个精确的公式。 视觉近似GIMP ,我发现将CSS模糊参数乘以5/3(1.6666…),然后四舍五入到最接近的整数,得到的高斯模糊半径会产生非常接近的视觉近似值(与Firefox 50中的CSS):
实施 |
loan · 如何创建带有阴影和透明填充的边界以使阴影出现 7 年前 |
Hobbestigrou · 从go调用C函数 8 年前 |
Martin Pfeffer · 如何以编程方式生成长阴影 8 年前 |
user3163300 · 如何在椭圆上绘制阴影? 9 年前 |