PHP年历css样式,(译)用CSS设计日历

本文探讨了如何使用CSS有效地设计日历,强调了为何在特定情况下使用table布局是合理的。作者分享了他们的Photoshop设计流程,以及CSS和HTML代码实现日历的细节,包括边框、背景图片和链接状态的样式。文章还提到了无障碍性问题,如添加abbr属性以增强屏幕阅读器的体验,并鼓励读者关注表格的亲和力。
摘要由CSDN通过智能技术生成

table元素

如果你已经看过我的代码,就会发现我的日历是用table做的。不错,因为日历中显示的是表列数据,所以这样说来用table布局是合理的。而用table定位制作整个网站是不合适的,但我们完全可以有针对性的将table用在列表数据当中。像日历,程序表,图表,时间表我们都可以用table制作。此外试想一下,如果没有引用CSS,那些用CSS控制的浮动对象和绝对定位的对象会把页面变得一团糟。事实上,在我处于用CSS布局狂热的状态下,曾经试着不用table制作日历。相信我,这到最后会非常的头疼,因为你要考虑到所有不同的浏览器的兼容性并进行调试。这纯粹是浪费时间,还好我走过来了;-)

Molly Holzschlag 写了一篇很好的文章 “语义的意义”("The Meaning of Semantics")

设计日历

每个人都有自己习惯的设计步骤,我则先用Photoshop设计页面。在确定了颜色样式以后,用CSSEdit和BBEdit编辑代码。在这个日历当中只用一个gif图片,XTHML和CSS代码如下:

#calendar {

width: 141px;

padding: 0;

margin: 0;

border-left: 1px solid #A2ADBC;

font: normal 12px/20px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;

color: #616B76;

text-align: center;

background-color: #fff;

}

我们用ID选择器给日历命名,并且制定必要的属性比如width,padding,...等等。如果整页只有一个talbe的话,也可以写在table标签中。

td {

border-right: 1px solid #A2ADBC;

border-bottom: 1px solid #A2ADBC;

width: 20px;

height: 20px;

text-align: center;

background: url(images/bg_calendar.gif) no-repeat right bottom;

}

我们还要对表格的单元格td标签进行定义。我给table定义了一个左边框,给每个td定义了一个右边框和下边框。当然除了这么定义以外肯定还有其他的方法.

td a:link, td a:visited {

color: #608194;

background: url(images/bg_calendar.gif) no-repeat;

}

td a:hover, td a:active {

color: #6aa3ae;

background: url(images/bg_calendar.gif) no-repeat right top;

}

日历中只有一个图片,在CSS中定义背景的图片的三种不同位置来3个不同背景,用了几个样式定义了日历月份导航以及当前日期.

*查看CSS

*查看日历

添加更多有亲和力的代码

有些tables中的元素能够帮助用屏幕阅读机的读者更容易的阅读,比如在代码中添加属性摘要.想了解更多表格亲和力的文章首选 Roger Johansson 的 "深入表格(Bring on the tables)"

在我的日历中添加了一些为屏幕阅读机阅读所必须的缩写属性(abbr),来解释周日的"S",周一的"M",周二的"T"等等.但我搞不懂,缩写属性(abbr)是对内容的缩略写法,而我用在日历中却恰恰相反(译者注:作者用abbr="Sunday"属性解释了"S"的意思).所以我想知道我这么做是否正确.如果你知道正确的写法请告诉我,谢谢;-)

(译)用CSS设计日历

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值