问题
I wonder if it is even possible creating a table with diagonal border line using css or jquery just like below:
Any ideas will be appreciated.
回答1:
Anything is possible if you fiddle around with it long enough, here's an example using some creative borders and a lot of CSS:
.arrow_box:after, .arrow_box:before {
top: 100%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
FIDDLE
And another one using CSS3 rotate:
-webkit-transform: rotate(26.5deg);
-moz-transform: rotate(26.5deg);
-ms-transform: rotate(26.5deg);
-o-transform: rotate(26.5deg);
transform: rotate(26.5deg);
FIDDLE
or you could just use an image as the background for your table.
回答2:
Officially a table cannot have diagonal borders but with little CSS tricks you can make it appear so, here's the code..
.borderdraw {
position:fixed;
border-style:solid;
height:0;
line-height:0;
width:0;
z-index:-1;
}
table td
{
width:60px;
max-height:55px;
border:1px solid #000;
}
.tag1{ z-index:9999;position:absolute;top:40px; }
.tag2 { z-index:9999;position:absolute;left:40px; }
.diag { position: relative; width: 50px; height: 50px; }
.outerdivslant { position: absolute; top: 0px; left: 0px; border-color: transparent transparent transparent rgb(64, 0, 0); border-width: 50px 0px 0px 60px;}
.innerdivslant {position: absolute; top: 1px; left: 0px; border-color: transparent transparent transparent #fff; border-width: 49px 0px 0px 59px;}
</style>
<table>
<tr>
<td>
<div class = "tag1">Tag1</div>
<div class="tag2">Tag2</div>
<div style="z-index:-1;">
<div class="diag">
<div class="outerdivslant borderdraw">
</div>
<div class = "innerdivslant borderdraw">
</div>
</div>
</div>
</td>
</tr>
</table>
And here's the output.
Hope it helps.
回答3:
table borders can't be diagonal, you just could try to use an element (div) with one border and rotate it (if css3 is ok)
来源:https://stackoverflow.com/questions/15727675/create-diagonal-border-of-a-cell