zoukankan      html  css  js  c++  java
  • 表格表头绘制对角线(不固定表格宽高)

    一般我们的html表格表头需要绘制对角线展示横向、纵向表头的类型,普通的实现方法就是使用css绘制两个三角形,但是是在已知宽高的情况下,如果站在基础研发的角度肯定是不行的,那么我就临时抱佛脚看了一下用svg绘制一条线,并使用这个svg文件作为我的这个表格表头的背景图,没想到效果还是不错的。

    下面贴出来html代码

     1 <%@ page language="java" contentType="text/html; charset=utf-8"
     2     pageEncoding="utf-8"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     4 <html>
     5 <head>
     6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     7 <title>表格表头 对角线</title>
     8 <style type="text/css">
     9     body {TEXT-ALIGN: center;}
    10     table th {
    11         background-color: #2393df;
    12         border: 1px solid #dddddd;
    13         max-width: 150px;
    14         min-width: 150px;
    15     }
    16     table thead tr:FIRST-CHILD th:FIRST-CHILD {
    17         background-image: url(line.svg);
    18     }
    19 </style>
    20 </head>
    21 <body>
    22     <table>
    23         <thead>
    24             <tr>
    25             <th rowspan="2" style="position: relative;">
    26                 <div class="clearfix" style="positin:absolute;top:5px;right:5px;"><font style="float:right;">横向表头</font></div>
    27                 <br>
    28                 <div style="positin:absolute;bottom:10px;left:10px;"><font style="float:left">纵向表头</font></div>
    29             </th>
    30             <th colspan="2">纵向表头1</th><th rowspan="2">纵向表头3</th></tr>
    31             <tr><th>纵向表头1.1</th><th>纵向表头1.2</th></tr>
    32         </thead>
    33         <tbody>
    34             <tr><th>横向表头1</th><td>1</td><td>2</td><td>3</td></tr>
    35             <tr><th>横向表头2</th><td>1</td><td>2</td><td>3</td></tr>
    36             <tr><th>横向表头3</th><td>1</td><td>2</td><td>3</td></tr>
    37             <tr><th>横向表头4</th><td>1</td><td>2</td><td>3</td></tr>
    38             <tr><th>横向表头5</th><td>1</td><td>2</td><td>3</td></tr>
    39             <tr><th>横向表头6</th><td>1</td><td>2</td><td>3</td></tr>
    40             <tr><th>横向表头7</th><td>1</td><td>2</td><td>3</td></tr>
    41         </tbody>
    42     </table>
    43 </body>
    44 </html>

    svg文件的代码:

    1 <?xml version="1.0" standalone="no"?>
    2 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
    3 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
    4 <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%"><line x1="0" y1="0" x2="100%" y2="100%" stroke="white" stroke-width="1"/></svg>

    最终的效果:

    表头的html代码中有一个定位,这是为了在我表头分级的情况下能更好的表达,上级和下级类别不一样!

  • 相关阅读:
    HorizontalScrollView水平滚动控件
    编解码学习笔记(十):Ogg系列
    449A
    要点Java17 String
    struts2复习(五)拦截器总结
    java的wait和notifyAll使用方法
    centos网速特别慢的最佳解决的方法
    一年成为Emacs高手(像神一样使用编辑器)
    c++ 操作注冊表
    python 多线程编程
  • 原文地址:https://www.cnblogs.com/sun-space/p/5889314.html
Copyright © 2011-2022 走看看