CSS网页制作实例教程:非常酷的日期效果

2016-02-20 00:26 2 1 收藏

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是CSS网页制作实例教程:非常酷的日期效果,一起来学习了解下吧!

【 tulaoshi.com - Web开发 】

LearningjQuery.com的博客日志上的日期效果非常的酷,如下图:

awesometechnique.png

其中文字的样式和垂直的年份就会告诉你这不是用图片来完成的。而且在标记语言中日期信息是是以文字出现的,就像通常的那样。

awesometechnique-fine.png

通过Firebug查看,代码非常简洁漂亮!

awesometechnique-firebug.png

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

很明显每一个日期并没有各自的图片。它们都出自同一张图片(css sprites!),图片的不同地方被放置上了不同的内容:天、月和年。也许你会记得这和一年前Joost de Valk posted about 上的技术是一样的。

来看一下这张漂亮的图片:

dates.png

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

HTML代码:

div class="postdate" div class="month m-06"Jun/div div class="day d-30"30/div div class="year y-2009"2009/div /div

awesometechnique-schematics.png

在一个CMS(内容管理系统),例如wordpress中,背后的代码应该是这样:

div class="postdate" div class="month m-?php the_time('m') ?"?php the_time('M') ?/div div class="day d-?php the_time('d') ?"?php the_time('d') ?/div div class="year y-?php the_time('Y') ?"?php the_time('Y') ?/div

CSS代码

CSS才是精灵发挥作用的地方。利用我们已经在HTML代码中设置的特殊的类名称,我们可以设置使用图片的哪一部分。

首先,我们给父元素应用相对位置定位。然后我们给其中的三个部分应用绝对定位。我们让这三部分使用相同的图片(我们的精灵),设置它们各自的高度和宽度,再将文字移除出页面。

然后,我们设置每一月(12种可能),每一天(31种可能)和每一年(设置了10年)使用背景图片的不同位置。

.postdate {position: relative;width: 50px;height: 50px;float: left;} .month, .day, .year {position: absolute;text-indent: -1000em;background-image: url(/wp-content/themes/ljq/images/dates.png);background-repeat: no-repeat;} .month { top: 2px; left: 0; width: 32px; height: 24px;} .day { top: 25px; left: 0; width: 32px; height: 25px;} .year { bottom: 0; right: 0; width: 17px; height: 48px;} .m-01 { background-position: 0 4px;} .m-02 { background-position: 0 -28px;} .m-03 { background-position: 0 -57px;} .d-01 { background-position: -50px 0;} .d-02 { background-position: -50px -31px;} .d-03 { background-position: -50px -62px;} .y-2006 { background-position: -150px 0;} .y-2007 { background-position: -150px -50px;} .y-2008 { background-position: -150px -100px;}

awesometechnique-dateposition.jpg

希望你能喜欢!

原文:Date Display Technique with Sprites

来源:https://www.tulaoshi.com/n/20160220/1631857.html

延伸阅读
标签: Web开发
在CSS规范中有一个渲染对象的概念,通常用一个盒子(box, rectangle)来表示。mozilla通过一个叫frame的对象对盒子进行操作。frame主要的动作有三个: * 构造frame, 以建立对象树(DOM树) * reflow, 以确定对象位置,或者是调用mozilla的Layout(这里是指源码的实现) * 绘制,以便对象能显示在屏幕上 总的来说,reflow就是载入内容树(...
标签: Web开发
标题右侧更多的实现 曾经做上图所示的效果,会使用到position来相对定位到h2标签的右侧.这样的做法,代码确实会多好几行. 其实可以用个笨一点的办法来实现的: 譬如html代码如下: h2 a h ref="#" 标题 /a span更多 /span /h2 使用potsition的css差不多如下: h2{ position:relative; height:20px; } span{ position:...
在这篇文章中我们将通过使用Adobe Illustrator中的3D效果来创建一组网页按钮。为什么要用这种方法?原因是这种方法替代了使用不同的笔刷和其他工具来创建高光和阴影,只需一步就能实现,充分利用了现成的光线设置和斜角形状。让我们开始! 最终效果图: 第一步:按钮形状 我们从创建基本的网页按钮形状开始。选择圆角矩形工具,在画板中任...
标签: Web开发
Date(日期)对象可以使用Date()构造器来创建,在前面的教程中我们已经介绍了Date()构造器,这里就不重复叙述。它没有参数,返回的数值就是当前的日期。下面的表格显示了为日期构造器的有效输入: var today = new Date(); 返回当前的日期和时间 var newyear = new Date("December 31, 1998 23:59:59"); 输入的是表单的字符串 “月 日,...
标签: Web开发
在上面一节我们讲到的是垂直的导航.但是大多网站用的还是横向的导航,那么就来跟我学下横向导航是如何实现的. 要怎么实现下面的效果.只要在列表项之间避免换行就行了,所以要把li转换为内联. HTML和CSS代码如下: ============================= !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"    ...

经验教程

54

收藏

8
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部