2013-03-14 122 views
1

大家好我有一个CSS选择这样CSS选择器不工作在IE10

table[id^="tblBody_"] tbody tr td input[type="checkbox"] 
{ 
    margin-top:-3px; 
} 

HTML

<table id="tblBody_tblApplicationWizardPageDetail"> 
<tbody> 
<tr> 
    <td> 
    <input id="chkDisplayedBit" type="checkbox"/> 
    </td> 
</tr> 
</tbody> 
</table> 

我要申请上复选框这个CSS存在于表格单元格,其中表ID开头tblBody_

这东西在IE8中正常工作,但不是在IE10中

请帮我一把。这真的很紧急。

在此先感谢

+1

您可以发布您的HTML? – 2013-03-14 05:52:26

+0

有没有其他的复选框有 – PSR 2013-03-14 05:56:55

+0

@ rob.alarcon我已更新我的html – rahul 2013-03-14 05:57:43

回答

1

如果您的HTML类似于下面的代码片段,它会工作:

<table id="tblBody_32"> 
    <tbody> 
     <tr> 
      <td> 
       <input type="checkbox" /> 
      </td> 
     </tr> 
    </tbody> 
</table> 
+0

它不适用于IE10,IE8可以正常工作 – rahul 2013-03-14 05:59:55

+0

你确定32?为什么不33 ;-)? – rochal 2013-03-14 06:02:26

1
<!DOCTYPE HTML> 
<html lang="en-US"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Example</title> 
    <style type="text/css"> 
     *{ margin: 0px; padding: 0px; } 
     table[id^="tblBody_"]{ border-collapse:collapse; border-spacing:0; margin: 20px auto; width: 200px; } 
     table[id^="tblBody_"] tbody tr td{ border:1px solid #ddd; width: 90px;padding: 5px; } 
     table[id^="tblBody_"] tbody tr td input[type="checkbox"] { margin-left: 20px; } 
    </style> 
</head> 
<body> 
    <table id="tblBody_abc">   
     <tbody> 
      <tr> 
       <td>1</td> 
       <td><input type="checkbox" name="hobbit" id="hobbit"></td> 
      </tr> 
     </tbody> 
    </table> 
</body> 
</html> 

我用这个,它工作正常。

-1
E[foo^="bar"] 

的E元素 “foo” 的属性值完全始于 字符串 “bar”

selector level 3 

和​​他们写IE 10.0支持CSS3选择see here 一个同样由msdn IE 10支持属性选择器

如果一切都不起作用selectivizr是一个JavaScript实用程序,它模拟Internet Explorer 6-8中的CSS3伪类和属性选择器[]确实可以在IE10中工作。

3

问题不在选择器中,例如您可以看到,例如,在规则中添加outline: solid red。并设置积极的边际效果。问题似乎是IE处理复选框元素上的负边距的方式。我不知道实际的IE 8是否也存在这个问题,但IE 10中的IE 8仿真模式有它。

简单的解决方法是使用相对定位的,而不是消极保证金:

position: relative; top: -3px; 
+0

我试过你的解决方案,它仍然无法正常工作,但如果我给我的复选框样式的id应用,但我想通过我的选择器应用css – rahul 2013-03-14 06:35:24

+0

@rahul,你是否尝试完全替代'margin-top:-3px;'我建议的代码?你是如何推断它不起作用的? 3像素的位移难以看到,但如果您尝试使用“-30px”,效果非常明显。 – 2013-03-14 07:20:11