Heim  >  Artikel  >  Web-Frontend  >  So erzielen Sie den Slash-Header-Effekt in einer Tabelle

So erzielen Sie den Slash-Header-Effekt in einer Tabelle

PHP中文网
PHP中文网Original
2017-06-21 16:19:042433Durchsuche

Tabelle, dieses Ding muss jedem bekannt sein. Wir stoßen oft darauf im Code, daher ist es manchmal notwendig, der Tabelle einen Schrägstrich hinzuzufügen, aber wie erreicht man diesen Effekt?

Ich habe die folgenden Methoden zusammengefasst:

1. Die einfachste und einfachste Methode

Gehen Sie direkt zur Benutzeroberfläche des Unternehmens und bitten Sie sie, ein Bild als Hintergrund zu erstellen das Bild hier und fülle es aus. Ist es nicht ganz einfach! ! !

2. Eine ziemlich einfache Methode

Wenn Freunde, die CSS3 kennen, diesen Effekt sehen, erscheint ihnen die Attributtransformation tatsächlich sofort Es gibt ein Problem, bei dem auf die Kompatibilität von Browsern geachtet werden muss (IE besteht immer noch darin, dass Ihr Unternehmen nur mit Chrome kompatibel sein muss). für Sie geeignet ist.

3. Sehr einfache Methode

.biaoTou {
                border-top: 200px #199fff solid; /*上边框宽度等于表格第一行行高*/  
                border-left: 200px #ff8838 solid; /*左边框宽度等于表格第一行第一格宽度*/  
            }
<td width="200"><div class="biaoTou"></div></td>

Diese Methode ist auch sehr einfach, schreiben Sie sie einfach wie oben beschrieben auf Format in Ordnung. Bei dieser Schreibweise gibt es jedoch ein offensichtliches Problem: Bei dieser Methode werden tatsächlich zwei unterschiedliche Rahmenfarben verwendet, um die diagonale Linie der Tabellenüberschrift zu unterteilen. Die Farben auf beiden Seiten der diagonalen Linie können nicht gleich sein Bei einigen Formen wie Werbeaktivitäten können Sie diese Methode verwenden. Wenn wir jedoch benötigen, dass die Farben auf beiden Seiten des Schrägstrichs gleich sind, ist dieser Ansatz nicht anwendbar. Mit Vorsicht verwenden.

4. Sehr einfache Methode

Dieser Effekt kann tatsächlich mit einem anderen neuen Tag von CSS3 erreicht werden: Canvas. Die Verwendung als Leinwand zum Zeichnen einer diagonalen Linie ist eine sehr einfache Methode, daher werde ich sie nicht im Detail erklären. Es gibt jedoch auch ein häufiges Kompatibilitätsproblem Sie können tun, was Sie wollen (warum unser Unternehmen immer über den abscheulichen IE nachdenken muss und ich auch nur Projekte machen möchte, die mit Google kompatibel sind).

5. Keine einfache Methode

Das ist die js-Methode

<!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=&#39;0&#39;   style=&#39;position:   absolute;   left:   "  + (x)  + ";   top:   "  + (y)  + ";background-color:   "  + color  + "&#39;   src=&#39;px.gif&#39;   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, &#39;#000000&#39;);  
        line(getLeft(td2), getTop(td2), getLeft(td2) + td2.offsetWidth,  
                getTop(td2) + td2.offsetHeight, &#39;#000000&#39;);  </script>  </body>  </HTML>

Okay, ich habe die fünf Methoden abgeschlossen, ich hoffe es funktioniert. Hilfreich für alle

Das obige ist der detaillierte Inhalt vonSo erzielen Sie den Slash-Header-Effekt in einer Tabelle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn