IE 8不尊重div宽度

时间:2013-12-05 12:41:25

标签: css internet-explorer-8 cross-browser internet-explorer-9

我正在尝试在宽度为120px的div中获取img和段落。这适用于IE10,Firefox和Chrome。但是IE10之前的浏览器还没有。看起来IE不尊重div的宽度,这使得像段落这样的元素的宽度为100%。

我应该在这里改变什么?

.menu {

display:inline-block;
display:-moz-inline-stack;
zoom:1;
*display:inline;

height: 120px;
width: 120px;
cursor: pointer;
margin-top: 10px;
}

.menu a {
    text-decoration: none;
    width: 120px;
}

.menu img {
    width: 100px;
} 

1 个答案:

答案 0 :(得分:1)

您无法为<a><img>等内联代码设置宽度属性,除非有强制阻止。

试试这个:

.menu a {
    text-decoration: none;
    width: 120px;
    display: block;
}

.menu img {
    width: 100px;
    display: block;
}

OR(如果您希望在IE7 +中使用内联块行为)

.menu a
{
  text-decoration: none;
  width: 120px;
  display: inline-block;
  /* IE 7 HACK */
  *display: inline;
  zoom: 1;
}

.menu img
{
  width: 100px;
  display: inline-block;
  /* IE 7 HACK */
  *display: inline;
  zoom: 1;
}

它会起作用,但不是一个好习惯...

为了设置<img>宽度,您必须更改html width属性,这样:

<img src="asd.png" alt="image description" width="100" />