2013-06-05 80 views
2

不工作我想申請邊境到邊界在IE

  1. .xforms-required類,而不是一個span元素或
  2. input元素元件,其具有.xforms-required
元素的後代

所以我拿出

.xforms-required:not(span), .xforms-required input { 
    border: 1px solid gold !important; 
} 

這是Fiddle

它在Firefox 18.0.1中工作正常,在IE中不工作(在IE 8中測試過)。 不確定CSS選擇器或border屬性是否有問題。

面臨的一些問題的jsfiddle在IE所以寫了一小段對於同一

<html> 
    <body> 
     <style> 
      .xforms-required:not(span), .xforms-required input { 
       border: 1px solid gold !important; 
      } 
     </style> 
     <span class="xforms-required"> 
      <input> // This should get border 
     </span>  
     <input class="xforms-required"> // This should get border  
    </body> 
</html> 

對不起,我可能是愚蠢的問題,但不是一個CSS傢伙,所以..


由於Adrift尖在IE9 +中支持:not(),在IE7 +版本中實現相同的任何其他替代方法

+0

IE8僅支持CSS 2.1,您的選擇是CSS 3,您可以使用jQuery來解決這個問題。 – ZippyV

+3

':not()'在IE 9下不支持 - http://caniuse.com/css-sel3 – Adrift

+0

@ZippyV:我很樂意使用jQuery,但不能使用它。需要純粹的CSS靈魂 – xyz

回答

3

如何:

input.xforms-required, .xforms-required input { 
    border: 1px solid gold; 
} 

可選:

span.xforms-required { 
    border: none; 
} 
+0

和我想要的一樣。謝啦! – xyz

2

將註釋轉換爲回答:IE8 doe s不支持:not()。您需要找到其他方式來定義您的選擇器。也許input.xforms-required, .xforms-required input