首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >矩形凹四边形

矩形凹四边形
EN

Stack Overflow用户
提问于 2011-05-13 23:22:03
回答 1查看 1.5K关注 0票数 6

只使用CSS,一个内角大于180度的四边形可以通过操纵一个矩形来创建吗?我知道,可以使用CSS3变换从标准矩形创建任意凸四边形。

我已经能够以几种不同的方式使用多个矩形创建凹形多边形(有时通过隐藏溢出);

  1. 相邻的矩形。这是一个问题,因为视觉差异发生在接缝由于反混叠,这是更明显的高对比度背景。当与旋转一起使用时,效果可能会特别糟糕(除了像45度这样的“好的”旋转)。长方形也有一个疯狂的倾向,是奇怪的排列在不同的缩放水平。
  2. 重叠矩形,四边形由矩形的相乘组成(每个矩形的颜色是四边形的颜色)。当四边形的颜色使用alpha通道时,这是一个问题,因为重叠区域看起来更深。
  3. 重叠矩形,四边形由矩形的差组成(至少一个矩形的颜色是背景的颜色)。当在偏移量处绘制相同形状的阴影时,这是一个问题,因为前景的重叠区域“擦除”了任何底层阴影。

使用上面的#1和#3编辑一个凹形四边形(一种“星际迷航”符号)的例子,可以看到这里

我想有一个凹形四边形与模拟嵌入阴影(暗前景颜色与阿尔法通道,光影颜色与阿尔法通道),这就是为什么#2和#3是问题。在这一点上,一个实际的影子似乎是不可能的;我对经过调整的元素的阴影没有很好的经验。

那么,是否有可能通过操纵一个矩形来做到这一点呢?或者,还有其他我没考虑过的方法吗?

编辑

我认为这在某种程度上是可能的,但这是一种欺骗:使用一个单一字符的文本,其字形已经是一个相当安全的字体(例如,U+27A4,Arial中的黑色右箭头),然后将其转换为垃圾。然而,这将给跨浏览器对齐页面的其他元素带来问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-14 22:54:53

我很确定没有,因为CSS依赖于矩阵转换,但它不是自由坐标转换--框坐标是通过反射进行对比的:

如果我们有一个矩形( p1,p2,p3,p4)与p1相对于p3,p2相对于p4,则该矩形的CSS表示是一个只使用三个点定义的形状:p1、p2、p3和隐含点p4,它总是计算为{p2反映在p1-p3}行的中点上。对矩形的三个实际坐标的任何操作都会导致第四个隐含坐标的变化。

这样就不可能形成一个凹形四边形。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5998717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档