我有一个很大的问题,让我的网站comp。使用旧浏览器。
我在网站的很多部分使用标签+输入文字。某处IE7没有显示标签的背景。
登录标签的CSS:
label[for="login"] {
-moz-border-radius:5px 0 0 5px;
-moz-border-radius:5px 0 0 5px;
-webkit-border-radius:5px 0 0 5px;
background:url(moduletable_header_color.png) repeat-x left bottom;
border-bottom:#b3aba4 1px solid;
border-left:#b3aba4 1px solid;
border-radius:5px 0 0 5px;
border-right:#b3aba4 1px solid;
border-top:#b3aba4 1px solid;
color:#fff;
display:block;
float:left;
font-family:'TitilliumText22LMedium';
font-size:12px;
font-weight:bold;
height:25px;
line-height:25px;
margin:0;
padding-bottom:0;
padding-left:10px;
padding-right:10px;
padding-top:0;
text-shadow:1px 1px 0 black;
width:140px;
}
我将这个相同的代码用于另一个标签的其他页面:
.formField label {
-moz-border-radius:5px 0 0 5px;
-webkit-border-radius:5px 0 0 5px;
background:url(moduletable_header_color.png) repeat-x left bottom;
border-bottom:#b3aba4 1px solid;
border-left:#b3aba4 1px solid;
border-radius:5px 0 0 5px;
border-right:#b3aba4 1px solid;
border-top:#b3aba4 1px solid;
color:#fff;
display:block;
float:left;
font-family:'TitilliumText22LMedium';
font-size:12px;
font-weight:bold;
height:25px;
line-height:25px;
margin:0;
padding-bottom:0;
padding-left:10px;
padding-right:10px;
padding-top:0;
text-shadow:1px 1px 0 black;
width:140px;
}
第二是运作良好。第一个在其他浏览器上工作得很好。 应该怎么做?我拉出我的头发..
答案 0 :(得分:1)
我希望IE7不支持属性选择器(label [for =“login”])。当我检查w3c时,如果我们放入doctype,它将起作用。 这是一个例子: -
http://www.w3schools.com/css/tryit.asp?filename=trycss_attselector_value
更多细节在这里
http://www.w3schools.com/css/css_attribute_selectors.asp
是的,它不支持 [用于= “登录”]
答案 1 :(得分:1)
要使其在IE7 和兼容的浏览器中运行,请使用此选择器:
label[for="login"], label[htmlFor="login"]
有关此IE7错误的详细信息,请参阅:http://reference.sitepoint.com/css/attributeselector#compatibilitysection
答案 2 :(得分:0)
IE7不允许您选择带有'for'属性的标签。其他属性有效,但尝试以这些方式选择元素将不起作用:
label[for=test],
label[for] {
/* THIS CODE WILL BE IGNORED */
}
您必须以其他方式选择元素,例如使用ID或类。
IE7在使用属性选择其他元素时也存在问题。例如,尝试将table th[cellpadding=0]
作为选择器也不起作用。