首先声明:
这只是探讨一种CSS模拟表格对角线的用法,实际在工作中可能觉得这样做有点小题大作,这不是本主题讨论的重点。如果对此深以为然的朋友,请一笑过之。。。
有时在插入文档时,要用到表格对角线,常见的作法是用图片的方式来处理,还有就是用vml来画对角线,能不能用html+css方式来实现呢?答案是肯定的,下面我们来摸拟一个表格对角线。
原理:
用边框线来摸拟斜线,我们知道,如果将一个DIV的边框线设置得足够宽并定义了不同的颜色时,其相邻的两条边框线交界处就是斜线。知道了这个原理,我们就可以用border-left和border-top来模拟出斜线的效果。
我们先创建一个结构:
<div class="out">
<b>类别</b>
<em>姓名</em>
</div>
我们用<div class="out">作为对角线的容器,我们来设置斜线样式,关键代码如下:
.out{
border-top:40px #D6D3D6 solid;/*上边框宽度等于表格第一行行高*/
width:0px;/*让容器宽度为0*/
height:0px;/*让容器高度为0*/
border-left:80px #BDBABD solid;/*左边框宽度等于表格第一行第一格宽度*/
position:relative;/*让里面的两个子容器绝对定位*/
}
<b>和<em>两个标签来设置两个分类,分别将它们设置为块状结构display:block;清除其默认的字体样式font-style:normal;因其父容器设置了相对定位,所以设置其为绝对定位,这样可以将它偏移到你想指定的位置了。
b{font-style:normal;display:block;position:absolute;top:-40px;left:-40px;width:35px;}
em{font-style:normal;display:block;position:absolute;top:-25px;left:-70px;width:55x;}
这样一个斜线对角线就模拟出来了。知道了原理,你可以变成很多有趣的东西出来,祝你好运!
这种对角线模拟法也有缺点:
- 宽高度必须是已知的
- 宽高的长度不能差得太大,你可以试试将宽度拉得比高度长好几倍,看看效果。(给你们留点作业练习练习)
- 还有就是斜线条不能设置颜色。
另:以上代码只测试了ie6和ff3,其它浏览器未做测试,请朋友们测试一下。
下面是完整的代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>用div+css模拟表格对角线</title>
<style type="text/css">
*{padding:0;margin:0;}
caption{font-size:14px;font-weight:bold;}
table{ border-collapse:collapse;border:1px #525152 solid;width:50%;margin:0 auto;margin-top:100px;}
th,td{border:1px #525152 solid;text-align:center;font-size:12px;line-height:30px;background:#C6C7C6;}
th{background:#D6D3D6;}
/*模拟对角线*/
.out{
border-top:40px #D6D3D6 solid;/*上边框宽度等于表格第一行行高*/
width:0px;/*让容器宽度为0*/
height:0px;/*让容器高度为0*/
border-left:80px #BDBABD solid;/*左边框宽度等于表格第一行第一格宽度*/
position:relative;/*让里面的两个子容器绝对定位*/
}
b{font-style:normal;display:block;position:absolute;top:-40px;left:-40px;width:35px;}
em{font-style:normal;display:block;position:absolute;top:-25px;left:-70px;width:55x;}
.t1{background:#BDBABD;}
</style>
</head>
<body>
<table>
<caption>用div+css模拟表格对角线</caption>
<tr>
<th style="width:80px;">
<div class="out">
<b>类别</b>
<em>姓名</em>
</div>
</th>
<th>年级</th>
<th>班级</th>
<th>成绩</th>
<th>班级均分</th>
</tr>
<tr>
<td class="t1">张三</td>
<td>三</td>
<td>2</td>
<td>62</td>
<td>61</td>
</tr>
<tr>
<td class="t1">李四</td>
<td>三</td>
<td>1</td>
<td>48</td>
<td>67</td>
</tr>
<tr>
<td class="t1">王五</td>
<td>三</td>
<td>5</td>
<td>79</td>
<td>63</td>
</tr>
<tr>
<td class="t1">赵六</td>
<td>三</td>
<td>4</td>
<td>89</td>
<td>66</td>
</tr>
</table>
</body>
</html>
来自:蓝色理想
- ■fsaa.exe是什么进程 有什么作用 fsaa进程查询
- ■fpdisp4.exe是什么进程 有什么作用 fpdisp4进程查询
- ■floater.exe是什么进程 作用是什么 floater进程查询
- ■fsg_3202.exe是什么进程 有什么用处 fsg_3202进程查询
- ■frameworkservic.exe是什么进程 有什么作用 frameworkservic进程查询
- ■frontpage.exe是什么进程 有什么作用 frontpage进程查询
- ■fsmb32.exe是什么进程 作用是什么 fsmb32进程查询
- ■fpassist.exe是什么进程 有什么作用 fpassist进程查询
- ■fnrb32.exe是什么进程 作用是什么 fnrb32进程查询
- ■fsdfwd.exe是什么进程 有什么用 fsdfwd进程查询
- ■fsav32.exe是什么进程 有什么作用 fsav32进程查询
- ■frsk.exe是什么进程 有什么作用 frsk进程查询
- ■wdfmgr.exe是什么进程 wdfmgr进程可以关闭吗
- ■fppdis2a.exe是什么进程 有什么作用 fppdis2a进程查询
- ■fsg.exe是什么进程 作用是什么 fsg进程查询
- ■fsma32.exe进程是什么文件 fsma32是什么进程
- ■fsbwlan.exe是什么进程 有什么作用 fsbwlan进程查询
- ■freedom.exe进程是什么文件 作用是什么 freedom进程查询
- ■forte.exe是什么进程 有什么作用 forte进程查询
- ■fsm32.exe是什么进程 有什么作用 fsm32进程查询
- ■fs20.exe是什么进程 有什么作用 fs20进程查询
- ■fsgk32st.exe是什么进程 有什么作用 fsgk32st进程查询
- ■FONTVIEW.EXE是什么进程 作用是什么 FONTVIEW进程查询
- ■fsgk32.exe是什么进程 作用是什么 fsgk32进程查询
- ■fsbwsys.exe是什么进程 作用是什么 fsbwsys进程查询
- ■如何用支付宝向朋友讨红包?支付宝讨红包方法
- ■fpxpress.exe是什么进程 有什么作用 fpxpress进程查询
- ■fsguiexe.exe进程是什么文件 fsguiexe进程查询
- ■如何使用破解版爱奇艺安卓客户端免费观看VIP电影呢?
- ■fpdisp5a.exe是什么进程 有什么作用 fpdisp5a进程查询