用CSS做个柱形图
一时来了兴致,也想学习下CSS了,把《Head First HTML & CSS & XHTML》看了一遍,才发现写网页也是这么有乐趣,比写后台代码爽多了。在Meyer的网页上看到可以用CSS来画图表,真是太神奇了(或许对那些有经验的人来说不神奇,可ABitNo是刚开始学习的)。先看看效果图
你能不被被这效果给征服吗?我们一起来看看实现传奇的代码吧
首先是HTML代码
<ul id="q-graph"> <li class="qtr" id="q1">Q1 <ul> <li class="sent bar" style="height: 111px;"><p>$18,450.00</p></li> <li class="paid bar" style="height: 99px;"><p>$16,500.00</p></li> </ul> </li> <li class="qtr" id="q2">Q2 <ul> <li class="sent bar" style="height: 206px;"><p>$34,340.72</p></li> <li class="paid bar" style="height: 194px;"><p>$32,340.72</p></li> </ul> </li> <li class="qtr" id="q3">Q3 <ul> <li class="sent bar" style="height: 259px;"><p>$43,145.52</p></li> <li class="paid bar" style="height: 193px;"><p>$32,225.52</p></li> </ul> </li> <li class="qtr" id="q4">Q4 <ul> <li class="sent bar" style="height: 110px;"><p>$18,415.96</p></li> <li class="paid bar" style="height: 195px;"><p>$32,425.00</p></li> </ul> </li> <li id="ticks"> <div class="tick" style="height: 59px;"><p>$50,000</p></div> <div class="tick" style="height: 59px;"><p>$40,000</p></div> <div class="tick" style="height: 59px;"><p>$30,000</p></div> <div class="tick" style="height: 59px;"><p>$20,000</p></div> <div class="tick" style="height: 59px;"><p>$10,000</p></div> </li> </ul>
接下来是CSS代码
#q-graph { position: relative; width: 600px; height: 300px; margin: 1.1em 0 3.5em; padding: 0; background: #DDD url(fade-light.png) repeat-x; border: 2px solid gray; list-style: none; font: 9px Helvetica, Geneva, sans-serif; } #q-graph ul { margin: 0; padding: 0; list-style: none; } #q-graph li { position: absolute; bottom: 0; width: 150px; z-index: 2; margin: 0; padding: 0; text-align: center; list-style: none; } #q-graph li.qtr { height: 298px; padding-top: 2px; border-right: 1px dotted #C4C4C4; color: #AAA; } #q-graph li.bar { width: 60px; border: 1px solid; border-bottom: none; color: #000; } #q-graph li.bar p { margin: 5px 0 0; padding: 0; } #q-graph li.sent { left: 13px; background: #DCA url(fade-dark.png) repeat-x; border-color: #EDC #BA9 #000 #EDC; } #q-graph li.paid { left: 77px; background: #9D9 url(fade-dark.png) repeat-x; border-color: #CDC #9B9 #000 #BFB; } #q-graph #q1 { left: 0; } #q-graph #q2 { left: 150px; } #q-graph #q3 { left: 300px; } #q-graph #q4 { left: 450px; border-right: none; } #q-graph #ticks { width: 600px; height: 300px; z-index: 1; } #q-graph #ticks .tick { position: relative; border-bottom: 1px solid #BBB; width: 600px; } #q-graph #ticks .tick p { position: absolute; left: 100%; top: -0.67em; margin: 0 0 0 0.5em; }
这是Meyer网站上文章的地址
http://meyerweb.com/eric/css/edge/bargraph/demo.html
本文基于 署名-非商业性使用-禁止演绎 2.5 中国大陆 发布
34 COMMENTS >>LEAVE<<
-
ABitNo,你还真什么都整啊!真的是名不虚传,^_^
-
话说...这个叫柱状图...
-
漂亮!
-
@doyle
谢谢。。。
-
@海贼阿D
略懂一点。。。
-
@半凉气候
什么东西给那些天才都能变成宝。。。
-
厉害 厉害
我就知道CS 哈哈哈
-
@tmdab123
人家可是专家。。。我是菜鸟。。。
-
你好。我看到你在我的博客里留言说不相信那种点击广告赚钱的做法。
其实那是可信的。因为那也是广告业的一种形式,在国外非常流行。因此有人在点击并读了那些广告后,会去购买广告里所说的产品或服务(这种情况主要是在国外),因此推销商就因此获利了。所以这种做广告的方法其实是很现实的。
我介绍的那种只是其中的一种。你注册以后,它每天给你发10个左右的广告,每点击一个赚一美分。这样每天就可以赚0.1美元左右。虽然不多,但这只需要你动动鼠标,全部工作在3分钟内就可以完成了。如果你能同时做更多这样的网上冲浪的话,每天是可以有一笔比较稳当的收入的。更主要的是,这样的注册是完全免费的,不需要你花一分钱。
建议你试试看就知道了。如果你注册了,我可以教你具体怎样去做。呵呵 -
@世界娱乐网
谢谢你啊,原来是这样,我去看看。。。你这么晚了也还没睡啊。。。
-
好文章!受益了。
我也要学习CSS!加油啊~ABitNo,你学东西真是太快了!
-
@TualatriX
哈哈,谢谢TX。。。
现在正在做一个WordPress的主题,超级简洁型的,昨天晚上一晚上没睡觉。。。竟然还不困。。。 -
邀请您加入博客爱好者,展示你的博客
收录中http://im.bokefan.cn/
优秀博客一网打尽。
-
@世界娱乐网
这样啊!我也去看看!
-
AbitNo,怎么换主题了,这个主题好干净,好简洁,朴素得有些过了啊!
-
@TualatriX
大名鼎鼎的Tualatrix都来这里了,AbitNo不错嘛!
-
都是搞网络的,做个链接,以后多交流^_^
-
@海贼阿D
哈哈!这是我自己做的。。。还没细细完善。。。
-
@阿祠
好啊,我先有事,回来就加上。。。
-
@海贼阿D
哈哈,谢谢大伙支持。。。
-
这个应该叫直方图吧
-
@Moligaloo
。。。我现在是真的不知道了。。。
-
@海贼阿D
AbitNo,你确实牛,我很佩服你
-
@海贼阿D
谢谢你啊。。。不过我只是个刚刚起飞的菜鸟。。
-
画个图都这么麻烦,用R就一个Hist就出来了。程序员真累啊
-
@luansheng
不错。。。是相当的累。。。不过也相当的幸福。。。
-
关于在网页上显示这类图形,如果用JS的话,可以用JSChart,如果用Flash的话可以用Open Flash Chart
-
@Moligaloo
这种东西还没研究过,等自己做网站的时候再研究下。。。
-
最近很流行这个^!^
-
@keelii
是啊,CSS正在强大着。。。
-
好好学,继续努力,坚持下来才会成功。其实这些都是简单的东西,PHP等服务器端编程才是有些挑战性的东西,前台配合JS会获得更好的效果,但是JS这东西又不是那么好学的啊,哎!
-
@Ludou
我感觉server端的更简单,做一个优秀的前端我怎么也完成不了。。。
不过这几天JavaFX的Linux版刚出来,又有的学了。。。 -
唉..最近也在研究这些..
囧的是..前端后台都要研究..真的忙不过来阿
-
@xifs
我现在非常兴奋。。。
那本Agile Web Development With Rails总算是被我看完了。。。发现用Rails的话,也不怎么用学前端技术,真的是一个人学一下Ruby就行了,什么东西都是Ruby代码。。。
