0

我正在使用以下 css :

.GridDraggedRow tr td.firstCol{
padding: 2px 10px 0 0;
text-align: right;
vertical-align: top;
width: 1px;
width: 1%\9; /* IE9 and below */
white-space: nowrap;
}

正如你所看到的,我正在使用一个非常丑陋的 css hack。我的问题是,这个 hack 已从我使用AjaxMin生成的缩小 css 文件中删除。这是我们交付系统中的后期构建步骤,因此我们将坚持使用 AjaxMin。ajaxmin文档解释说,允许使用“hacks”标志进行一些基于注释的黑客攻击,例如:

ajaxmin -css -comments:hacks GridLayout.css

不幸的是,\9 hack 是不允许的。我能做些什么 ?在我看来,解析生成的文件不是一个好主意。

我想我最好的选择是将此hack插入另一个非缩小文件中或直接插入标签之间的html页面中......你们有更好的主意吗?ajaxmin 提供排除部分会很棒......

4

1 回答 1

0

你不应该使用任何那些丑陋的黑客!

请改用Paul Irish 的条件注释方法

在 HTML 标记的开头使用它:

<!--[if lt IE 10 ]>    <html class="lt-ie10"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--> <html> <!--<![endif]-->

然后,在你的 CSS 中,使用这个:

.GridDraggedRow tr td.firstCol{
    padding: 2px 10px 0 0;
    text-align: right;
    vertical-align: top;
    width: 1px;
    white-space: nowrap;
}
.lt-ie9 .GridDraggedRow tr td.firstCol{
    width: 1%;
}

这更清洁,更可靠。

于 2011-09-02T13:23:42.987 回答