内联块在Internet Explorer 7,6中不起作用

我有一个inline-block CSS代码。 任何人都可以告诉我如何使其在Internet Explorer 6和7的工作。任何想法? 也许我做错了什么? 谢谢!

 #signup { color:#FFF; border-bottom:solid 1px #444; text-transform:uppercase; text-align:center; } #signup #left { display: inline-block } #signup #right { background-image:url(images/signup.jpg); border-left: solid 1px #000; border-right: solid 1px #000; display: inline-block; padding:1% 2% width:16%; } #signup #right a { font-size:100%; font-weight:bold } #signup #right p { font-size:90%; font-weight:bold } #signup a:hover { color:#FFF; text-decoration:underline } 

在IE6 / IE7中, display: inline-block只适用于自然内联的元素(如span )。

为了使它在其他元素,如div的工作,你需要这个:

 #yourElement { display: inline-block; *display: inline; zoom: 1; } 

*display: inline使用一个“安全的”CSS黑客适用于只有IE7和更低 。

对于IE6 / 7, zoom: 1提供hasLayout 。 有“布局”是display: inline-block的先决条件display: inline-block总是工作。

在保持有效的CSS的同时可以应用这种解决方法,但是这并不值得考虑,特别是如果您已经使用了任何供应商的前缀属性。

请阅读以下关于display: inline-block更多信息display: inline-block (但忘记了-moz-inline-stack ,这只是现在古老的Firefox 2所必需的)。

*display:inline工作正常IE7黑客 。 但是,您可以添加zoom:1作为*background:#fff; *display:inline; zoom:1 *background:#fff; *display:inline; zoom:1 *background:#fff; *display:inline; zoom:1 。 在这里,你可以把你的背景颜色代码。 有时,屏幕上看不到布局,例如,列表项不会出现在屏幕上。 然后,在这种情况下,这种方式效果很好,就像在其他浏览器中一样。