【发布时间】:2014-03-11 22:16:47
【问题描述】:
垂直进度条
此栏的正确样式要求:
进度条必须被包含多个交叉条的元素覆盖。
无图像(即使用横杆图像)。
进度条必须附在原点的底部,并向上延伸。
最重要的是,进度条的包装宽度必须保持动态 (%),而不是静态定义。
栏的宽度取决于其容器组件的宽度
纯 CSS 解决方案是最好的,但 JQuery 是公平的游戏。
进度条 HTML:
<div class="container">
<div class="attendance">
<p class="title">attendance</p>
<div class="attendance-bar">
<div class="attendance-level"></div>
<div class="attendance-cage-css">
<div class="crossbar-1"></div>
<div class="crossbar-2"></div>
<div class="crossbar-3"></div>
<div class="crossbar-4"></div>
<div class="crossbar-5"></div>
<div class="crossbar-6"></div>
<div class="crossbar-7"></div>
<div class="crossbar-8"></div>
<div class="crossbar-9"></div>
</div>
</div>
</div>
</div>
JS Fiddle 包括 HTML 标记和所有 CSS 类:
我的进步:
奖励:
我已经为每个横杆实现了独特的类,以实现上面显示的它们之间不断增加的边距。如果您知道如何在没有类的情况下实现效果,请竖起大拇指。在你的 JS Fiddle 中展示它。
【问题讨论】:
-
这是一个挑战还是你要展示你已经拥有的东西?
-
我所拥有的根本不起作用,如果这不违反规则,我打算让它成为一个挑战。 @Spokey
-
我想你可以从这里处理它,你主要需要设置父母的
positionoder 为position:absolute;获取父母的宽度。 jsfiddle.net/q2SAK/4 -
是的,这是最基本的。此方法允许您相对于他们的
parent而不是body定位absolute child elements。 -
通常只有
position:absolute;元素的父元素需要它。但根据结构,它可能会一直上升到body。我并没有真正看你的小提琴,只是在任何地方添加它以确保:D(你实际上并不需要它用于容器和出勤棒)