Internet Explorer - CSS table 上的 box-Shadow 不适用于 IE 浏览器
Internet Explorer - CSS box-Shadow on table not working for IE browser
我在 Table 中为 tr
尝试了 box-shadow
,并且在 Chrome 中工作正常,但不适用于 IE 浏览器。我检查了 Stack Overflow 上几乎所有建议的链接,但我找不到任何理由和答案。
这是我用的例子http://jsfiddle.net/c_Dhananjay/h9tx9tpx/
我在哪里:
table tbody tr:hover {
background-color:#13326b;
color:#ffffff;
text-shadow: 1px 2px #000000;
box-shadow: inset 6px 0px 0px -1px #ff0000;
-webkit-box-shadow:inset 6px 0px 0px -1px #ff0000;
-moz-box-shadow:inset 6px 0px 0px -1px #ff0000;
}
table tbody tr {
height:100px;
}
我希望这看起来像是一个重复的问题,但希望您能给出正确的解决方案。
您可以将框阴影应用于行,而不是定位行的第一个 td。在视觉上,它给出了完全相同的结果。
table tbody tr:hover td:first-child {
-webkit-box-shadow:inset 6px 0px 0px -1px #ff0000;
-moz-box-shadow:inset 6px 0px 0px -1px #ff0000;
box-shadow: inset 6px 0px 0px -1px #ff0000;
}
旧答案
根据caniuse.com
Edge and IE up to 11 suppress box-shadow in tables with border-collapse:collapse
为了在 IE 中支持您的框阴影,您需要将以下代码块添加到您的样式表中:
table {
border-collapse: separate;
}
在您的示例中,这不会对您的 table 样式产生太大影响,因此您应该没问题。
我在 td
上应用了 box-shadow
而不是 tr
并在 css 中进行了一些更改,这适用于 chrome / safari / IE11 / EDGE
这里正在工作 link : https://jsfiddle.net/h9tx9tpx/2/
工作代码:
// css file
table tbody tr {
background-color:#13326b;
color:#ffffff;
text-shadow: 1px 2px #000000;
}
table tbody tr {
height:70px;
}
table {
border-collapse: separate;
}
td:first-child:before{
box-sizing: border-box;
content:'';
position:absolute;
left:0;
right:2px;
display: block;
height: 60px;
box-shadow: inset 6px 0px 0px -1px #ff0000;
-webkit-box-shadow: inset 6px 0px 0px -1px #ff0000;
}
我在 Table 中为 tr
尝试了 box-shadow
,并且在 Chrome 中工作正常,但不适用于 IE 浏览器。我检查了 Stack Overflow 上几乎所有建议的链接,但我找不到任何理由和答案。
这是我用的例子http://jsfiddle.net/c_Dhananjay/h9tx9tpx/ 我在哪里:
table tbody tr:hover {
background-color:#13326b;
color:#ffffff;
text-shadow: 1px 2px #000000;
box-shadow: inset 6px 0px 0px -1px #ff0000;
-webkit-box-shadow:inset 6px 0px 0px -1px #ff0000;
-moz-box-shadow:inset 6px 0px 0px -1px #ff0000;
}
table tbody tr {
height:100px;
}
我希望这看起来像是一个重复的问题,但希望您能给出正确的解决方案。
您可以将框阴影应用于行,而不是定位行的第一个 td。在视觉上,它给出了完全相同的结果。
table tbody tr:hover td:first-child {
-webkit-box-shadow:inset 6px 0px 0px -1px #ff0000;
-moz-box-shadow:inset 6px 0px 0px -1px #ff0000;
box-shadow: inset 6px 0px 0px -1px #ff0000;
}
旧答案
根据caniuse.com
Edge and IE up to 11 suppress box-shadow in tables with border-collapse:collapse
为了在 IE 中支持您的框阴影,您需要将以下代码块添加到您的样式表中:
table {
border-collapse: separate;
}
在您的示例中,这不会对您的 table 样式产生太大影响,因此您应该没问题。
我在 td
上应用了 box-shadow
而不是 tr
并在 css 中进行了一些更改,这适用于 chrome / safari / IE11 / EDGE
这里正在工作 link : https://jsfiddle.net/h9tx9tpx/2/
工作代码:
// css file
table tbody tr {
background-color:#13326b;
color:#ffffff;
text-shadow: 1px 2px #000000;
}
table tbody tr {
height:70px;
}
table {
border-collapse: separate;
}
td:first-child:before{
box-sizing: border-box;
content:'';
position:absolute;
left:0;
right:2px;
display: block;
height: 60px;
box-shadow: inset 6px 0px 0px -1px #ff0000;
-webkit-box-shadow: inset 6px 0px 0px -1px #ff0000;
}