2017-01-17 12 views
7

Daję box-shadow do tr w table To działa poprawnie we wszystkich przeglądarkach, ale w IE-10 to pokazano box-shadow we wszystkich td, dlaczego?Box-cień pojawia się we wszystkich kolumnach w IE

tr { 
 
    box-shadow: 2px 0 0px #888 inset; 
 
}
<table border=0 cellsapcing=0 cellpadding=6> 
 
    <tr> 
 
    <th>Column</th> 
 
    <th>Column</th> 
 
    <th>Column</th> 
 
    <th>Column</th> 
 
    </tr> 
 
    <tr> 
 
    <td>Column</td> 
 
    <td>Column</td> 
 
    <td>Column</td> 
 
    <td>Column</td> 
 
    </tr> 
 
</table>

chrom

enter image description here

IE 10

enter image description here

Uwaga: nie mogę używać border dlatego dałem box-shadow

Odpowiedz

6

zabrałbym trochę innego podejścia i przypisać cień pole do pierwszych th i td elementów. To rozwiązanie porusza problem, zamiast go rozwiązywać - ale jest tak samo ważne, jak się czuję.

tr th:first-child, tr td:first-child { 
 
    box-shadow: 2px 0 0px #888 inset; 
 
}
<table border=0 cellsapcing=0 cellpadding=6> 
 
    <tr> 
 
    <th>Column</th> 
 
    <th>Column</th> 
 
    <th>Column</th> 
 
    <th>Column</th> 
 
    </tr> 
 
    <tr> 
 
    <td>Column</td> 
 
    <td>Column</td> 
 
    <td>Column</td> 
 
    <td>Column</td> 
 
    </tr> 
 
</table>

+0

Właściwie w moim projekcie podejście potrzebują więcej dostosowanie więc jestem biorąc pod uwagę to opcje jak ostatnia opcja. –

+0

Przypisywanie stylów do fizycznego elementu '' jest zawsze ryzykowne, ponieważ sposób, w jaki przeglądają je przeglądarki, jest w najlepszym przypadku niespójny. Naprawdę zaleciłbym unikanie stylów w wierszach stołów tak bardzo, jak to tylko możliwe, aby ułatwić Ci życie. – Tom

+0

W porządku! Idę z twoją opcją, ale nadal chcę wiedzieć, dlaczego tak się dzieje, dzięki za ułatwienie mi życia: p: D. –

Powiązane problemy