Css 在IE7中消失提交按钮
你好。我对以下遗留代码有问题。除了IE7中的submit按钮不见外,其他一切都可以。页面上仍留有空间,但它不会显示。我尝试了各种方法来强制hasLayout,但没有成功。有什么建议吗 XHTML XHTML 1.0严格文档类型:Css 在IE7中消失提交按钮,css,button,internet-explorer-7,submit,Css,Button,Internet Explorer 7,Submit,你好。我对以下遗留代码有问题。除了IE7中的submit按钮不见外,其他一切都可以。页面上仍留有空间,但它不会显示。我尝试了各种方法来强制hasLayout,但没有成功。有什么建议吗 XHTML XHTML 1.0严格文档类型: <div id="headerFunctionality" class="clearfix"> <div id="headerSearch" class="clearfix"> <form action="http://foo.com" m
<div id="headerFunctionality" class="clearfix">
<div id="headerSearch" class="clearfix">
<form action="http://foo.com" method="GET">
<label for="q">Search</label>
<input id="q" name="q" type="text" class="text" />
<input type="submit" id="btn_search" value="Search">
</form>
</div>
</div>
}从代码中我可以看出两件事可能导致这种情况: 1-图像btn.search.gif要么是完全透明的,要么是背景颜色,要么是找不到。该按钮没有背景色和边框,因此如果没有图像/文本,则不会显示
2-按钮可见性设置为“无”,这会在页面上留下空间,但不会呈现按钮。你能看看firebug中的样式吗?如果你添加了一个name属性,它能工作吗?问题可能来自于。这是IE6和IE7中的一个错误,当出现某些混合:悬停、浮动和布局时会发生。有关详细信息,请参阅链接。我认为:
<div class="clear"><!-- --></div>
将修复它。我最终通过删除以下内容对其进行了排序:
form>input#btn_search { /* For non-IE browsers*/
height: 0px;
}
多年前,我在某个地方阅读了CSS图像替换后,总是将其包含在CSS图像替换中,但忽略它似乎不会影响任何其他浏览器,并且已经修复了IE7中的问题。您是否确保已在输入端将display:block添加到CSS中?这应该可以解决问题。这听起来像是一个文本缩进/图像,用来取代IE6.0和7.0中的按钮问题。这个解决方案对我有效过好几次 为这些浏览器版本制作一个单独的样式表,并将以下代码放在标题中:
<!--[if lt IE 8]>
<link rel="stylesheet" type="text/css" href="ie7-and-down.css" />
<![endif]-->
颜色应与背景颜色相同
宽度应该比图像的宽度大20-30像素
更多信息和帮助可以在这里找到:Hah,也是我的第一个想法,但不幸的是,这两个想法都没有。我甚至尝试过将可见性显式设置为visible。这个问题只出现在IE7中。感谢您的输入和链接,但这也没有起到作用。我终于修好了&我会把答案贴出来的。
form>input#btn_search { /* For non-IE browsers*/
height: 0px;
}
<!--[if lt IE 8]>
<link rel="stylesheet" type="text/css" href="ie7-and-down.css" />
<![endif]-->
#btn_search {
width: 85px;
height: 20px;
padding: 20px 0 0 0;
margin: 1px 0 0 0;
border: 0;
background: transparent url(../images/btn.search.gif) no-repeat center top;
cursor: pointer; /* hand-shaped cursor */
cursor: hand; /* for IE 5.x */
font-size: 0;
color: #fff;
text-align: right;
text-indent: 0;
}