【发布时间】:2018-09-21 14:25:55
【问题描述】:
我正在尝试用纯 CSS 创建以下黄金分割线。
我正在尝试使用transform:scale; CSS 创建它到目前为止,我发现了以下内容:
.border_angle {
border: 50vw solid transparent;
width: 0;
height: 0;
border-bottom-color: transparent;
border-left-color: transparent;
border-top-color: transparent;
transform: scaleY(0.105) translateY(-50%);
-webkit-transform: scaleY(0.105) translateY(-50%);
-o-transform: scaleY(0.105) translateY(-50%);
-moz-transform: scaleY(0.105) translateY(-50%);
-ms-transform: scaleY(0.105) translateY(-50%);
position: absolute;
transform-origin: top center;
top: 0;
left: 0;
right: 0;
z-index: 11;
}
.border_angle_gold_l {
border-left-color: #BE955A;
}
.border_angle_gold-light_r {
border-right-color: #CCA56B;
}
<div style="margin-top: 200px;" class="border_angle border_angle_gold_l border_angle_gold-light_r"></div>
基本上,我几乎拥有它,但我只需要反转三角形!我不知道如何...任何帮助将不胜感激。
【问题讨论】:
-
为什么使用纯 CSS?
-
只是我认为 CSS 将是实现这一目标的最简单的选择 - 我不想使用透明的 PNG 或使用 javascript 等使其过于复杂(如果 js 甚至是一个选项? !) - 我在其他地方看到过,他们就是这样做的
-
如果您使用的是虚拟 div,它就不是纯 CSS。您可以设置标题部分底部或内容部分顶部的样式。或者,如果必须在专用的 html 元素上完成,您可以使用
hr元素,因为这在语义上比无意义的空 div 更正确。
标签: html css css-transforms css-shapes