CSS实例教程:CSS制作好看的网页表格

如果数据表格对于视力没有问题用户都难以阅读的话,那么想像一个那些用辅助技术(掌上设备)的人来说,它们是多么复杂和混乱.幸运的是html规范提供了许多无素和属性来提高数据表格对于这些设备的可访问性.

1.summary 和 caption

第一元素是表格的caption,它基本上用做表格的标题.尽管这不是必须有的元素,但是尽可以使用caption总是好的.另一个元素是summary.summary属性可以应用于表格标签,用来描述表格的内容.与image的alt文本属性相似.

2.thead, tbody, tfoot

thead, tbody, tfoot使网页设计人员能够将表格划分为罗辑部分.例如,可以将所有列标题放在thead元素中,这样就能够对这个特殊区域单独应用样式.如果选择使用thead或tfoot元素,那么必须至少使用一个tbody元素.在一个表格中只能使用一个thead和tfoot元素,但是可以使用多个tbody元素将复杂的表格划分为更容易管理的部分.

3.col 和 colgroup

行与列标题应该使用th标记而不是td,但是如果某些内容既是标题又是数据,那么它仍然使用td.表格标题可以设置为row或col的scope属性,定义它们是行标题还是列标题.

虽然tr元素使开发人员能够整行应用样式,但是很难整列应用样式.为了解决这个问题,w3c引入了colgroup和col元素.colgroup能够对使用col元素定义的一个或多个列进行分组.不幸的是,支持col和colgroup元素的样式的浏览器并不多.

以下是html代码:

=============================
<table cellspacing="0" id="playlistTable" summary="夕木木音乐排行榜,每周一次,给你最好听音乐享受.">
<caption>
夕木木音乐排行榜
</caption>

<colgroup>
<col id="PlaylistCol" />
<col id="trackCol" />
<col id="artistCol" />
<col id="albumCol" />
</colgroup>

<thead>
<tr>
<th id="playlistPosHead" scope="col">夕木木音乐排行榜</th>
<th scope="col">歌曲</th>
<th scope="col">歌手</th>
<th scope="col">专辑</th>
</tr>
</thead>

<tbody>
<tr class="odd">
<td>1</td>
<td>我的未来不是梦</td>
<td>张雨生</td>
<td>未知</td>
</tr>

<tr>
<td>2</td>
<td>昨日重现</td>
<td>卡朋特</td>
<td>未知</td>
</tr>

<tr class="odd">
<td>3</td>
<td>我的未来不是梦</td>
<td>张雨生</td>
<td>未知</td>
</tr>

<tr>
<td>4</td>
<td>昨日重现</td>
<td>卡朋特</td>
<td>未知</td>
</tr>

<tr class="odd">
<td>5</td>
<td>我的未来不是梦</td>
<td>张雨生</td>
<td>未知</td>
</tr>

<tr>
<td>6</td>
<td>昨日重现</td>
<td>卡朋特</td>
<td>未知</td>
</tr>

<tr class="odd">
<td>7</td>
<td>我的未来不是梦</td>
<td>张雨生</td>
<td>未知</td>
</tr>

<tr>
<td>8</td>
<td>昨日重现</td>
<td>卡朋特</td>
<td>未知</td>
</tr>

<tr class="odd">
<td>9</td>
<td>我的未来不是梦</td>
<td>张雨生</td>
<td>未知</td>
</tr>

<tr>
<td>10</td>
<td>昨日重现</td>
<td>卡朋特</td>
<td>未知</td>
</tr>

</tbody>

</table>
=========================

下面我们来添加css:

css规范有两个表格边框模型:单独的和叠加的.在单独模型中,在各个单元格周围有边框,而在叠加模型中单元格共享边框.大多数浏览器默认采用单独模型,因些首先要做的事就是将表格的border-collapse属性设置为collapse.为了防止表格太宽,需要限制它的宽度;为了帮助定义表格区域,添加边框是个好主意.通过应用少量的?直和水平填充,在表格单元格周围形成一些空白,这也是好想法.

---------------------------------
table {
  border-collapse: collapse;
  width: 50em;
  border: 1px solid #666;
}

th, td {
  padding: 0.1em 1em;
}
----------------------------------

css的border-spacing属性可以控制单元格之间的距离.不幸的是,windows上的IE6和更低版本不理解这个属性(别怀疑这件事,因为大多数人不懂得升级)因此很少使用它.为了去掉单元格之间的默认填充,不得不使用老式但可靠的cellspacing属性.严格地说,这个属性在本质上是表现性的.但是,它仍然是有效的html,而且是当前在IE6中控制单元间距的惟一方法.

--------------------------------------

<table cellspacing="0" id="playlistTable" summary="夕木木音乐排行榜,每周一次,给你最好听音乐享受.">

---------------------------------------

完整的css代码:

==============================
table {
  border-collapse: collapse;
  width: 50em;
  border: 1px solid #666;
}

caption {
  font-size: 1.2em;
  font-weight: bold;
  margin: 1em 0;
}

col {
  border-right: 1px solid #ccc;
}

col#albumCol {
  border: none;
}

thead {
  background: #ccc url(images/bar.gif) repeat-x left center;
  border-top: 1px solid #a5a5a5;
  border-bottom: 1px solid #a5a5a5;
}

th {
  font-weight: normal;
  text-align: left;
}

#playlistPosHead {
  text-indent: -1000em;
}

th, td {
  padding: 0.1em 0.5em;
}

.odd {
  background-color:#edf5ff;
}

tr:hover {
  background-color:#3d80df;
  color: #fff;
}

thead tr:hover {
  background-color: transparent;
  color: inherit;
}

==============================

刚学css的时候认为<table>标签没有用,其实那时候的想法是错的,<table>不用布局,现回到它原来的功能,--显示数据.

时间: 2024-10-04 01:17:18

CSS实例教程:CSS制作好看的网页表格的相关文章

CSS实例教程:PNG背景透明在网页设计中的运用

文章简介:PNG的背景透明在网页中应用比较广泛,但浏览器的兼容问题一直很让人头疼,用的CSS滤镜再变通一下也能实现PNG背景半透明的兼容问题,只不过不支持背景的定位而已,也就是说不支持CSS SCRIPT. PNG的背景透明在网页中应用比较广泛,但浏览器的兼容问题一直很让人头疼,用的CSS滤镜再变通一下也能实现PNG背景半透明的兼容问题,只不过不支持背景的定位而已,也就是说不支持CSS SCRIPT. 一.CSS 滤镜(两种方法) 一般能用CSS处理的就尽量不要用JS了,个中的原因,你懂的--

CSS实例教程:CSS Selector的优先级

文章简介:11个class与一个id"谁的优先级高的问题. 上周五下班前我们敬爱的三三大人又在组里讨论了关于"11个class与一个id"谁的优先级高的问题-_-! 猜一下 01 <!DOCTYPE HTML> 02 <html> 03 <head> 04 <meta charset="utf-8"> 05 <style type="text/css"> 06 body{fon

Photoshop入门实例教程:简单制作透明玻璃网页按钮

在这一篇教程中,我将教给你怎样在photoshop中创建一个透明玻璃效果的干净的网页用按钮. 这就是我们最终的结果.好了,让我们开始吧.在photoshop中新建文档,尺寸为430x430,白色背景. STEP-01 新建图层,命名为 "box".用圆角矩形工具 (U)创建一个圆角矩形.点击ctrl+回车创建选区,填充为白色. STEP-02 给这个形状创建图层属性-渐变叠加,内发光和描边. STEP-03 给这个形状创建渐变叠加.渐变颜色为-左边(#B1DB08) 中间(#66AB0

CSS实例教程:简单的的滑动导航栏效果

文章简介:CSS实例教程:简单的的滑动导航栏效果. 由于网页字体的限制,以及对导航栏美观的需求,使用background-repeat来做一个简单的文字导航栏已经远远不够了.在很多场合,导航栏的背景是一个图案,字体也不再是单调的宋体,这就需要我们把导航栏的整体效果做图在网页中使用. 今天我们就来做一个简单的的滑动导航栏效果(不知道应该叫它什么^_^),效果如下图:   思路:通过改变链接鼠标悬停状态(hover)的背景图片,来达到把鼠标放上去有高亮显示的效果. 方法:在本例中,我们是通过调整各链

CSS实例教程:简单的button风格的UI按钮

文章简介:CSS实例教程:简单的button风格的UI按钮. button应该是UI库中最常用到的一种.我个人对google+的那种简单的button风格比较喜欢,因为那样在不同的浏览器下视觉差异不是很大.不过现在自己确实已经没有心思去琢磨怎么去弥补ie的不足,所以下面的东西就不要拿ie打开了.还是贴出代码吧 <!DOCTYPE html> <html> <head>                        <title></title> 

css 入门教程:css控制input与bottn样式

哈哈今天我们来看看,css 入门教程:css控制文本输入框与按钮的css样式,好了我们先来看看效果图. 现在看到了我的文本输入框是不是淡色的背景与边框哦.现在来看看我们下面是怎么实现的吧.  <p align="center"><input name="" type="submit" class="btn" value="提交"></p>     <p align=

Javascript实例教程:DOM方法创建和修改表格

文章简介:Javascript实例教程:DOM方法创建和修改表格. <table>元素是HTML中最复杂的结构之一.要想创建表格,一般都必须涉及表示表格行.单元格.表头等方面的标签.由于涉及的标签多,因而使用核心DOM方法创建和修改表格往往都免不了要编写大量的代码.假设我们要使用DOM来创建下面的HTML表格: <table border="1" width="100%"> <tbody> <tr> <td>

CSS高级教程: CSS框架

文章简介:可以从CSS框架中借鉴到什么. 现在很多人会使用 CSS 框架进行快速建站.那 CSS 框架是什么呢,它通常是一些 CSS 文件的集合,这些文件包括基本布局.表单样式.网格.简单组件.以及样式重置.使用 CSS 框架大大降低工作成本进行快速建站.当然对于一些大型的项目,可能会很难照搬某些框架直接使用的,因为直接使用会带来一些限制或者冗余的问题.但在 CSS 框架已经日趋成熟的今天,在我们设计项目架构.规范的时候,现时市面上一些优秀的框架也可以给我们提供很多可借鉴的地方. 本文主要从几个

PowerPoint实例教程:制作生日贺卡(1)

Office是广为人知的一个办公系列软件,它的便捷与强大的功能无人能比.不少朋友也正靠这个在吃饭.需要很好的应用及掌握Office,会达到事半功倍的效果.这个不是一般的教程,是为了让大家能更好的掌握Office所撰写的一个实例教程,领域牵涉到word,http://www.aliyun.com/zixun/aggregation/16544.html">Excel等Office软件. 其中的实例不仅非常有用,并且可以举一反三制作出更完美的效果. PowerPoint篇 用PowerPoin