CSS hack 如何写,使得只有IE8识别,IE6/7不识别

比如我想让id是abc的标签:
#abc {bottom:?px;}
?处,IE8是15,IE6/7是14像素。

要求:
1、纯CSS或CSS hack写法,不用js、不判断浏览器版本
2、我的IE8版本是8.0.7600.16385,不是beta版。可以识别*、+号等,所以以前的方法不能使用了
3、\9我也试过,也不行!

谁能帮到我一定再加100!!
谢谢1楼的回答
但是,你的方法在IE8beta才能行得通,IE8正式版就能识别*号等了。
另外,\9:ie6、IE7、IE8都能识别
你说的\0只有IE8识别?? \0只有ie8 beta版本才识别,正式版不识别了!

---------------------------

看来可能我这个问题是无解的。
热心回答的朋友不要生气,我说过不要浏览器判断或者js
只要纯CSS的解答

sibhuang,我的IE8版本确实是8.0.7600.16385,你写的例子是对的,但是你说的hack方法不对
不信你试试 #abc {bottom:14px; bottom:15px\0;} (或者\9),IE6、IE7、IE8全认识的
(我的IE8也认识诸如*、+等符号)
我不是弯弯。。。

第1个回答  2010-01-27
用IE 条件判断语句,通过这个还可以不影响 W3C 的验证。

下面这段是只有 IE 8下面才认识的CSS
<!--[if IE 8]>
<style type="text/css" />
body {background: #f60;}
</style>
<![endif]-->

也可以新建一个名为ie8.css的style样式表,专门放ie8 的css样式。
像下面这样:
<!--[if IE 8]>
<link rel="stylesheet" href="css/ie8.css" type="text/css" />
<![endif]-->

关于 IE 的条件语句更多详细解释,请参考下面:
http://hi.baidu.com/quankang/blog/item/34d3eff906d38d51242df2bb.html
第2个回答  2010-01-27
能让ff识别的
IE8基本满足,现在还没有完全符合IE8的hack

IE6,IE7都有的
按你的要求,可以这样写(这可是标准的CSS hack写法)

* html #abc { bottom: 14px; } IE6
*+html #abc { bottom: 14px; } IE7
#abc { bottom: 15px; } FF IE8
第3个回答  2010-01-27
你这个bottom是什么意思?margin-bottom吗?
下面是我写的,W3C的DOCTYPE 这个声明一定要有,要不然不好使。
IE8单独的hack是\0

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
#abc {
margin-bottom:40px; /*ff的属性*/
margin-bottom:140px\9; /* IE6/7/8的属性 */
color:red\0; /* IE8支持 */
*margin-bottom:450px; /*IE6/7的属性*/}
</style>/*上下顺序不可以写错*/
</head>
<body>
<div id="abc" style="background:#F4F4F4">id="abc"</div>
<div style="height:30px; background-color:#CCC"></div>
</body>
</html>

楼主说IE8正式版不识别?那你现在的IE8版本号是多少呢?早在08年11月就发布的beta3版本别说你现在还用着呢。。正式版在09年3月份就发布了,现在2010年现在WIN7系统都是集成正式版,难道你用你的IE8看不到我写的代码的hack效果吗?目前微软官方的IE8版本号是8.0.7600,我的就是,上面的hack绝对好使。
第4个回答  2010-01-27
用ie条件判断吧

<!--[if IE 8]>
<link rel="stylesheet" href="css/ie8.css" type="text/css" />
<![endif]-->

这样写还有个好处就是不管版本怎么变都没问题,HACK则存在这样的问题
第5个回答  2019-06-18
没有IE7和IE8的HACK主流的做法是将IE8设置为兼容显示IE7like
this:<meta
http-equiv="X-UA-Compatible"
content="IE=7"
/>
相似回答