以下代码在Internet Explorer 6中无效。我无法将class
或id
放入其中。那有什么CSS黑客吗?
此代码位于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>
答案 0 :(得分:11)
相反,给输入一个类,然后从那里设置样式。像这样:
<input type="submit" class="myClass" value="Search" />
然后在CSS中设置.myClass的样式。这也适用于IE6。
答案 1 :(得分:5)
答案 2 :(得分: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"
});