5种做法实现table表格中的斜线表头效果(HTML+CSS+JS+Canvas+SVG)

news/2024/5/20 10:36:28/文章来源:https://blog.csdn.net/m0_66722601/article/details/132403599

table表格,这个东西大家肯定都不陌生,代码中我们时常都能碰到,那么给table加一个斜线的表头有时是很有必要的,但是到底该怎么实现这种效果呢?

我总结了以下几种方法:

1、最最最简单的做法

直接去找公司的UI,让她做一张图片,作为背景图片放到这里,然后撑满就可以了。是不是很简单!!!

2、相当简单的做法

其实了解css3的朋友,一看到这个效果,脑子中瞬间出现的就是transform这个属性,是的,这个确实可以,也很简单,就是有一个问题要注意浏览器的兼容性问题,大家心里要要时刻保持着危机意识(IE还存在呢),如果你们公司的要求是只兼容chrome,那么,这个方法很适合你。

3、十分简单的做法

.biaoTou {

    border-top: 200px #199fff solid; /*上边框宽度等于表格第一行行高*/

    border-left: 200px #ff8838 solid; /*左边框宽度等于表格第一行第一格宽度*/

}

 <td width="200">
    <div class="biaoTou">
    </div>
</td

这种方法也很简单,按照上面的格式写下来就好了。但是这种写法有个明显的问题:这种其实就是利用两种颜色的不同的border划分表头的斜线的,斜线两边的颜色不能相同,如果是做一些促销活动之类的表格时可以用这种方法。但是如果我们需要斜线两边的颜色一样时,这种做法是不适用的。慎用。

4、很简单的做法

这种效果其实还可以用css的另一个新的标签svg。将其作为画布画一条斜线是一种十分简单的做法,详情参见教程:

html表格中加入斜线,使用css给table表格表头单元格添加斜线

点击查看html表格中加入斜线
 

5、不简单的做法

那就是js做法了

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML> <HEAD> <TITLE>斜线表头</TITLE> <meta http-equiv="content-type" content="charset=gbk"> </HEAD> <body leftmargin=0 topmargin=0> <br> <div height="300">header</div> <hr> <TABLE border=0 bgcolor="000000" cellspacing="1" width=400 style="margin-left: 100px;"> <TR bgcolor="FFFFFF"> <TD width="111" height="52"><table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td id="td1"></td> <td>成绩</td> </tr> <tr> <td>姓名</td> <td id="td2"></td> </tr> </table></TD> <TD width="81">数学</TD>  <TD width="96">英语</TD> <TD width="99">C语言</TD> </TR> <TR bgcolor="FFFFFF"> <TD>张三</TD> <TD>55</TD> <TD>66</TD> <TD>77</TD> </TR> <TR bgcolor="FFFFFF"> <TD>李四</TD> <TD>99</TD> <TD>68</TD> <TD>71</TD> </TR> <TR bgcolor="FFFFFF"> <TD>王五</TD> <TD>33</TD> <TD>44</TD> <TD>55</TD> </TR> </TABLE> <script type="text/javascript"> function a(x, y, color) { document .write("<img   border='0'   style='position:   absolute;   left:   " + (x) + ";   top:   " + (y) + ";background-color:   " + color + "'   src='px.gif'   width=1   height=1>") } function getTop(tdobj) { vParent = tdobj.offsetParent; t = tdobj.offsetTop; while (vParent.tagName.toUpperCase() != "BODY") { t += vParent.offsetTop; vParentvParent = vParent.offsetParent; } return t; } function getLeft(tdobj) { vParent = tdobj.offsetParent; t = tdobj.offsetLeft; while (vParent.tagName.toUpperCase() != "BODY") { t += vParent.offsetLeft; vParentvParent = vParent.offsetParent; } return t; } function line(x1, y1, x2, y2, color) { var tmp if (x1 >= x2) { tmp = x1; x1 = x2; x2 = tmp; tmp = y1; y1 = y2; y2 = tmp; } for ( var i = x1; i <= x2; i++) { x = i; y = (y2 - y1) / (x2 - x1) * (x - x1) + y1; a(x, y, color); } } //line(1,1,100,100,"000000");  line(getLeft(td1), getTop(td1), getLeft(td1) + td1.offsetWidth, getTop(td1) + td1.offsetHeight, '#000000'); line(getLeft(td2), getTop(td2), getLeft(td2) + td2.offsetWidth, getTop(td2) + td2.offsetHeight, '#000000'); </script> </BODY> </HTML>

好了,五种方法都说完了,希望可以对大家有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_159475.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c语言每日一练(10)

前言&#xff1a;每日一练系列&#xff0c;每一期都包含5道选择题&#xff0c;2道编程题&#xff0c;博主会尽可能详细地进行讲解&#xff0c;令初学者也能听的清晰。每日一练系列会持续更新&#xff0c;暑假时三天之内必有一更&#xff0c;到了开学之后&#xff0c;将看学业情…

【Linux】Centos安装 mariadb 并授权远程登陆

&#x1f468;‍&#x1f393;博主简介 &#x1f3c5;云计算领域优质创作者   &#x1f3c5;华为云开发者社区专家博主   &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社区&#xff1a;运维交流社区 欢迎大家的加入&#xff01; &#x1f40b; 希望大家多多支…

ubuntu 20.04 安装 高版本cuda 11.7 和 cudnn最新版

一、安装显卡驱动 参考另一篇文章&#xff1a;Ubuntu20.04安装Nvidia显卡驱动教程_ytusdc的博客-CSDN博客 二、安装CUDA 英伟达官网&#xff08;最新版&#xff09;&#xff1a;CUDA Toolkit 12.2 Update 1 Downloads | NVIDIA Developer CUDA历史版本下载地址&#xff1a;C…

干货!一文告诉你SCRM和CRM有什么区别和联系?

在现代商业领域&#xff0c;我们经常听到两个缩写词&#xff0c;即"SCRM"和"CRM"。它们都与客户关系管理有关&#xff0c;但具体是什么意思&#xff1f;本文将用通俗易懂的方式解释这两个概念&#xff0c;以实例分析SCRM和CRM的功能并探讨它们之间的区别和…

【搭建WebDAV服务手机ES文件浏览器远程访问】

文章目录 1. 安装启用WebDAV2. 安装cpolar3. 配置公网访问地址4. 公网测试连接5. 固定连接公网地址6. 使用固定地址测试连接 有时候我们想通过移动设备访问群晖NAS 中的文件,以满足特殊需求,我们在群辉中开启WebDav服务,结合cpolar内网工具生成的公网地址,通过移动客户端ES文件…

一种新型的4H-SiC超结共模场效应晶体管(UMOSFET),具有异质结二极管,以提高反向恢复特性

标题&#xff1a;A novel 4H-SiC super junction UMOSFET with heterojunction diode for enhanced reverse recovery characteristics 摘要 摘要—本文提出并通过数值模拟研究了一种新型的碳化硅&#xff08;SiC&#xff09;超结共模场效应晶体管&#xff08;UMOSFET&#xf…

发布python模仿2023年全国职业的移动应用开发赛项样式开发的开源的新闻api,以及安卓接入案例代码

python模仿2023年全国职业的移动应用开发赛项样式开发的开源的新闻api&#xff0c;以及原生安卓接入案例代码案例 源码地址:keyxh/newsapi: python模仿2023年全国职业的移动应用开发赛项样式开发的开源的新闻api&#xff0c;以及安卓接入案例代码 (github.com) 目录 1.环境配…

WSL2和本地windows端口互通

众所周知 WSL 默认安装后&#xff0c;只允许windows访问 Windows Subsystem for Linux&#xff0c;而WSL是不能反之访问本地windows。我之前用vmware的思路认为是nat的网络模式&#xff0c;于是改成了桥接&#xff0c;结果wsl的桥接模式被我改的能访问本地&#xff0c;但是却不…

Jmeter 接口测试总结

背景介绍 对于 Android 项目来说&#xff0c;使用的是 Java 开发&#xff0c;网络请求接口的数量庞大且复杂&#xff0c;测试人员无法很直观的判断、得出网络请求是否存在问题。另一方面&#xff0c;为了验证请求接口是否能够在大负荷条件下&#xff0c;长时间、稳定、正常的运…

3、Spring之底层架构核心概念解析

BeanDefinition BeanDefinition表示Bean定义,BeanDefinition中存在很多属性用来描述一个Bean的特点。比如: class,表示Bean类型scope,表示Bean作用域,单例或原型等lazyInit:表示Bean是否是懒加载initMethodName:表示Bean初始化时要执行的方法destroyMethodName:表示Be…

善于打仗的人,没有特别大的名气和勇功

善于打仗的人&#xff0c;没有特别大的勇功 【安志强趣讲《孙子兵法》第15讲】 【原文】 见胜不过众人之所知&#xff0c;非善之善者也&#xff1b;战胜而天下曰善&#xff0c;非善之善者也。 【趣讲白话】 预判胜负没有超出常人的见识&#xff0c;算不上高明中最高明的&#x…

简单认识Docker的资源控制

文章目录 一、CPU资源限制1.设置CPU使用率上限2.设置CPU资源占用比&#xff08;设置多个容器才有效&#xff09;3.设置容器与CPU绑核 二、内存资源限制三、对磁盘I/O配额的限制 一、CPU资源限制 1.设置CPU使用率上限 Linux通过CFS&#xff08;Completely Fair Scheduler&#…

【C语言学习】二分法查找有序数组中的数

二分查找的基本原理 二分查找的基本逻辑就是每次找区间的中间数&#xff0c;然后与要查找的数进行比较&#xff0c;不断的缩小区间&#xff0c;最后区间中只剩一个数&#xff0c;即为要查找的数。如果不是&#xff0c;则没有该数。 二分查找只适用于有序数组 以数组中的数从左…

[oneAPI] 手写数字识别-VAE

[oneAPI] 手写数字识别-VAE oneAPIVAE模型实现手写数字识别任务定义使用包定义参数加载数据VAE模型与介绍训练过程结果 比赛&#xff1a;https://marketing.csdn.net/p/f3e44fbfe46c465f4d9d6c23e38e0517 Intel DevCloud for oneAPI&#xff1a;https://devcloud.intel.com/one…

web文件上传

文件上传指的是&#xff0c;将本地的图片、视频、音频上传到服务器&#xff0c;提供给其他用户浏览和下载的过程 前端需求 想要进行文件上传对于web前端来说有三个重要要素 1.<input type"file" name"image"> 提供这样的file文件上传格式 2. metho…

A - Bone Collector(01背包)

Many years ago , in Teddy’s hometown there was a man who was called “Bone Collector”. This man like to collect varies of bones , such as dog’s , cow’s , also he went to the grave … The bone collector had a big bag with a volume of V ,and along his tr…

IP库新增经过实践的Verilog 库

网上严重缺乏实用的 Verilog 设计。Project F 库是尝试让 FPGA 初学者变得更好部分。 设计包括 Clock- 时钟生成 (PLL) 和域交叉Display - 显示时序、帧缓冲区、DVI/HDMI 输出Essential- 适用于多种设计的便捷模块Graphics- 绘制线条和形状Maths- 除法、LFSR、平方根、正弦....…

x86 Linux系统下构建交叉编译工具(3)

接前一篇文章&#xff1a;x86 Linux系统下构建交叉编译工具&#xff08;2&#xff09; 本文参考以下文章&#xff1a; 建立交叉编译器 for arm &#xff08;binutils-2.17 gcc-3.4.6 glibc-2.3.6&#xff09; 特此致谢&#xff01; 上一回构建了binutils的交叉环境&#xff0…

虚实相生,深兰科技“产业元宇宙”探索数字经济新模式

运用深兰科技数字孪生技术生成的武汉江汉路 不用出门&#xff0c;也能在武汉江汉路逛街&#xff1f;创建虚拟数字人形象&#xff0c;用户就可以在基于数字孪生平台打造的元宇宙街区逛街购物。路过滑板店&#xff0c;地上随机掉落神奇胶囊&#xff0c;打开即发现一张满500减200的…

多模双芯LC光纤跳线应用下的光模块方案之争

从40G QSFP SR4光模块产品开始&#xff0c;多模MPO光纤跳线 逐步进入光模块用户的视野。随着新建数据中心的增多&#xff0c;该类光纤跳线也开始普及并被广泛应用。然而&#xff0c;对于不少10G/25G时代就已经建设好的“老旧”机房来说&#xff0c;机房内基本全部部署的是多模L…