首页前端开发HTML用div css模拟表格对角线

用div css模拟表格对角线

时间2024-01-23 23:57:43发布访客分类HTML浏览171
导读:收集整理的这篇文章主要介绍了用div css模拟表格对角线,觉得挺不错的,现在分享给大家,也给大家做个参考。 这只是探讨一种CSS模拟表格对角线的用法,实际在工作中可能觉得这样做有点小题大作,这不是本主题讨论的重点。如果对此深以为...
收集整理的这篇文章主要介绍了用div css模拟表格对角线,觉得挺不错的,现在分享给大家,也给大家做个参考。 这只是探讨一种CSS模拟表格对角线的用法,实际在工作中可能觉得这样做有点小题大作,这不是本主题讨论的重点。如果对此深以为然的朋友,请一笑过之.
首先声明
这只是探讨一种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>
@H_406_45@ffcod = delpost.runcode4 .value; ffcod = ffcod.replace(/
/g,''); delpost.runcode4 .value = ffcod; 提示:您可以先修改部分代码再运行
!DOCTYPE html> html> head> meta charset="gb2312"> title> 用div+css模拟表格对角线/title> style type="text/css"> * { margin:0; padding:0; } table { border-collapse:collapse; border-spacing:0; border-left:1px solid #999; border-top:1px solid #999; font-size:13px; text-align:center; width:500px; margin:50px auto; } td,th { border-right:1px solid #999; border-bottom:1px solid #999; padding:5px 0; background:#ddd; } td { background:#F7F8F5; } .mytablbox { width:100px; } .mytable { width:0; height:0; margin:-5px 0; position:relative; border-top:50px solid #ddd; border-left:100px solid #F7F8F5; } .mytable strong { display:block; position:absolute; top:-40px; left:-40px; width:35px; font-style:normal; } .mytable em { position:absolute; left:-90px; top:-17px; display:block; width:30px; font-style:normal; } /style> /head> body> table> tr> th class="mytablbox"> div class="mytable"> strong> 类别/strong> em> 姓名/em> /div> /th> th> 表格/th> th> 表格/th> /tr> tr> td> 表格/td> td> 表格/td> td> 表格/td> /tr> tr> td> 表格/td> td> 表格/td> td> 表格/td> /tr> tr> td> 表格/td> td> 表格/td> td> 表格/td> /tr> /table> /body> /html>
ffcod = delpost.runcode5 .value; ffcod = ffcod.replace(/
/g,''); delpost.runcode5 .value = ffcod; 提示:您可以先修改部分代码再运行
原理:利用border-top:50px solid #ddd; border-left:100px solid #F7F8F5; 模拟出三角形;再用css定位固定文字的位置。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

容器模拟表格

若转载请注明出处: 用div css模拟表格对角线
本文地址: https://pptw.com/jishu/584784.html
如何实现div 图片在DIV内水平居中 DIV CSS实现网页背景半透明效果

游客 回复需填写必要信息