在FireFox 3.0.15 / IE 6.0上以类似的方式进行CSS渲染; 7

时间:2010-05-26 08:08:29

标签: css firefox internet-explorer

以下css呈现方式不同取决于浏览器(主要是使用Firefox) Firefox:border-left-style:虚线似乎没有按预期生效,而是显示黑线。

我拍摄了截屏

FF - >

http://pixpin.com/images/81898090171964887806.jpg

IE6 - > http://pixpin.com/images/32538710129638992535.jpg

同样字体似乎是使用em的另一个问题,因为它们在跨浏览器中的响应相对较好。当我使用像素时它很乱,但不确定它们是否更好。

我不是CSS专家,使用CSS让我感觉比与二手车经销商打交道更糟糕。

.Main

{   font-family:Arial,“Trebuchet MS”,Sans-Serif;   font-size:0.8em;
  边框:0像素;  } .Header {     font-family:Arial,“Trebuchet MS”,Sans-Serif;     font-size:1.2em;     颜色:#666;     background:url(“../ images / header.jpg”)repeat-x左上角;     padding-left:10px;
    填充:4像素;     文本转换:大写;     边界:1px的;     边界崩溃:崩溃;     边界底部宽度:薄;     左边框样式:虚线;

} .Footer {     颜色:#666;     font-family:Arial,“Trebuchet MS”,Sans-Serif;     font-size:0.7em; } .Footer td {border-style:none;      文本对齐:中心; }

.Footer span {     颜色:#666;     font-family:Arial,“Trebuchet MS”,Sans-Serif;     font-size:0.7em;     字体重量:粗体;     文字装饰:下划线;     边框样式:无;  }

.Footer a {     font-family:Arial,“Trebuchet MS”,Sans-Serif;     font-size:0.7em;     颜色:#666;

}

。结果 - 项目td {     margin-left:10px;     垂直对齐:中部;     颜色:#666;     背景颜色:白色;     font-size:1.2em;     填充:4像素;     font-family:Arial,“Trebuchet MS”,Sans-Serif;     padding-left:10px;
    行高:20px;     边界:1px的;     边界崩溃:崩溃;     边界底部宽度:薄;     左边框样式:虚线; }

.Results-AltItem td {     margin-left:10px;     垂直对齐:中部;     颜色:#666;     font-size:1.2em;     / * _font-size:1.2em; / * IE6 hack * /     填充:4像素;     font-family:Arial,“Trebuchet MS”,Sans-Serif;     background-color:#ccc;     padding-left:10px;
    行高:20px;     边界:1px的;     边界:1px的;     边界崩溃:崩溃;     边界底部宽度:薄;     左边框样式:虚线;

}

{    文本对齐:权利; }

3 个答案:

答案 0 :(得分:2)

保持这些错误的最佳方法是使用CSS标准化(重置)基础,例如blueprint提供的基础。

如果您没有在蓝图上包含所有内容,请至少包含其reset.css文件。它将摆脱导航器之间的字体和间距不一致的行为(我不确定边界问题)

编辑:这就是安装蓝图基础所需的全部内容:

<link rel="stylesheet" href="/css/blueprint/screen.css" type="text/css" media="screen, projection">
<link rel="stylesheet" href="/css/blueprint/print.css" type="text/css" media="print">
<!--[if lt IE 8]><link rel="stylesheet" href="/css/blueprint/ie.css" type="text/css" media="screen, projection"><![endif]-->

答案 1 :(得分:1)

只显示CSS只显示了一半的图片,没有html,任何说法都是疯狂猜测。在任何情况下,Firefox都会显示您在IE浏览器编写过程中所写的内容。永远不要相信IE做任何正确的事。总是,总是使用现代浏览器(IE以外的任何东西)来初步测试你的标记。但IE中的众多错误和怪癖都是众所周知的,修复它的黑客也是如此。

有关违规页面的链接值得猜测一下。

答案 2 :(得分:0)

您可以使用像Meyers reset这样的CSS重置,或者将IE与Firefox和其他浏览器分开,使用Conditional Comments。通常Firefox是显示大多数正确的浏览器,因此当我创建网站时,我首先在FF中创建它,然后更改IE CSS以适应。

将其放入HTML页面的<head>

<!--[if lt IE 9]>
<link rel="stylesheet" type="text/css" href="path-to-file/ie.css">
<![endif]-->

在该样式表中设置一些适用于IE的CSS。

重要提示: border-left-style: dashed;对Firefox有效,请检查您的级联是否存在冲突边框左侧属性,将其放在CSS中的border-collapse:collapse之后,还要添加{{1到该规则的结尾。对于CSS选择器中的最后一条规则,您不需要它,但是当您切换它时,请确保添加它。

希望有所帮助。