2009-08-20 50 views
3

在下面的代碼是不工作的工作在Internet Explorer中  6.  我不能把classid在它。有沒有CSS的黑客?輸入[類型=提交] CSS未在Internet Explorer 6

此代碼是WordPress。我無法修改代碼;我只能修改CSS。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
    <head> 
     <style type="text/css"> 
      form input[type=submit]{ 
       background-color:#FE9900; 
       font-weight:bold; 
       font-family:Arial,Helvetica,sans-serif; 
       border:1px solid #000066; 
      } 
     </style> 
     <title>Untitled Document</title> 
     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
    </head> 

    <body> 
     <FORM action=""> 
      <INPUT type=text name=s> 
      <INPUT type=submit value=Search> 
     </FORM> 
    </body> 
</html> 
+3

是的 - IE6,完全過時,不能這樣做。你有什麼問題? – 2009-08-20 10:53:04

+1

爲什麼你不能在輸入標籤中放置一個類?標籤是自動創建的嗎? – 2009-08-20 11:05:58

+0

我wpuld建議您擁有自己的域名,並在其上託管您的WordPress解決方案。然後你可以訪問所有的代碼,並且你可以在輸入標籤上插入一個類。 是您當前的解決方案託管在wordpress.org?或者你自己的域名? – 2009-08-20 11:25:56

回答

11

相反,給輸入一個類,然後從那裏樣式。就像這樣:

<input type="submit" class="myClass" value="Search" /> 

然後風格的.myClass在你的CSS。這應該也適用於IE6。

+1

這是爲什麼downvoted?這是解決方案 – erikkallen 2009-08-20 11:19:37

+0

是的,我也不明白。我應該怎麼知道你不能插入一些額外的代碼? – 2009-08-20 11:23:56

3

中的Internet Explorer 6不支持attribute selector[attr="value"]。因此,有沒有辦法解決與CSS是提交輸入元素只(IE 6不支持adjacence selector +:last-of-type selector沒有將在此情況下幫助)。

因此,您唯一的選擇是通過添加類或ID或將其包裝到其他span元素中使該元素具有唯一的可尋址性。

或者 - 正如你已經指出,你不能做到這一點 - 使用JavaScript來選擇元素,並應用CSS規則給它。 jQuery可以使這相當容易:

$("form input[type=submit]").css({ 
    "background-color": "#FE9900", 
    "font-weight": "bold", 
    "font-family": "Arial,Helvetica,sans-serif", 
    "border": "1px solid #000066" 
});