4

我有这样的CSS:

.inline-block {
    display: -moz-inline-stack;
    display: inline-block;
    *display: inline;
    zoom: 1;
    width: 100px;
}

当我通过运行 CSSLint

csslint --ignore=star-property-hack test.css 

它仍然显示此错误:

width can't be used with display: inline.
    width: 100px;

有什么解决办法吗?

4

2 回答 2

2

没错...当显示为内联时,宽度没有意义。为什么要将显示设置为内联而不是内联块?

不过,请尝试使用相同的选择器将星属性设置为另一种样式:

.inline-block {
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    width: 100px;
}

.inline-block {
    *display: inline;
}
于 2014-08-10T03:28:33.010 回答
0

当您需要对 IE6 的支持时才需要display: inline 故障转移(IE7 及更高版本理解display: inline-block没有问题)。我会推荐以下内容:

如果需要支持IE6:

将 hack 分成条件样式表,仅适用于 IE6:

在您的主样式表中:

.inline-block {
    display: -moz-inline-stack;
    display: inline-block;
    width: 100px;
}

在 ie6.css 中:

.inline-block {
    display: inline;
    zoom: 1;
}

如果不需要支持 IE6:

只需使用代码:

.inline-block {
    display: -moz-inline-stack;
    display: inline-block;
    width: 100px;
}

而且要快乐。

于 2014-08-13T02:31:31.700 回答