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代码中有一个定位,这是为了在我表头分级的情况下能更好的表达,上级和下级类别不一样!

  • 相关阅读:
    JS站点
    1011 World Cup Betting (20分)
    1007 Maximum Subsequence Sum (25分)(动态规划DP)
    1006 Sign In and Sign Out (25分)
    1005 Spell It Right (20分)
    1004 Counting Leaves (30分)(DFS)
    1003 Emergency (25分)(Dijkstra算法)
    1002 A+B for Polynomials (25分)
    1001 A+B Format (20分)
    canvas
  • 原文地址:https://www.cnblogs.com/sun-space/p/5889314.html
Copyright © 2011-2022 走看看