【发布时间】:2012-04-22 07:19:37
【问题描述】:
页面布局在所有浏览器中都很好,但 IE9 除外。
我们在页面上使用块式布局,宽度为 660px,居中。
为了保持 660 像素的最大宽度,我将 h2 的宽度设置为 660 像素 这在所有浏览器中都很好,除了(惊喜)在 IE9 上,h2 字体很大并且跑偏了 660px 布局的巨大数量。
我可以更改 h2 中的措辞来缓解这种情况(缩短文本)吗?
不。页面上的措辞不是我的权限——别人的工作('UE'gal)。
这是我的 CSS:
h2 {
width: 660px;
}
660px 的宽度用于页面上的其他 div,并在页面上提供视觉上吸引人的“块布局”。
但是在着陆页上,其中一个 h2 标记内的文本 -- h2 文本在 IE9 上要大得多,因此 660px 的宽度超过了 IE9 的 h2 大字体大小。
这是一个违规行的示例:
<h2 class="grayDecorative">Make your Relics visible on our site now! -- OurSite!</h2>
这里是“灰色装饰”风格:
.grayDecorative
{
font-family: Arial, sans-serif;
background-image: url('images/chromishbg.gif');
background-repeat: repeat-x;
}
这种样式在 h2 中填充了文本后面具有视觉吸引力的渐变背景。
我正在考虑通过使用“有条件的 IE9”来解决这个问题,比如使用 h3 标签而不是 h2 标签,但 仅 在 IE9 上。 p>
如何让 html 有条件地使用 IE 的 h3?
【问题讨论】:
-
根据您提供的信息,我首先要调查的是确保您已明确声明标题标签的
font-size(不要将其留给浏览器默认值)。在上面的 css 中,没有为h2或类.grayDecorative声明大小。这可能会解决您的 IE 问题(并使跨浏览器的外观标准化)。 -
不使用固定宽度,而是使用宽度的百分比。它总是使文本在所有屏幕尺寸上流动。
-
我们已经尝试将 h2 设置为具有 font-size:16pt 并且到目前为止 IE9 16pt 字体更大,超过了最大 660px 宽度,但在其他地方看起来很好(以 FF 为例)。 grayDecorative 中的 font-family: Arial, sans-serif 样式会导致这种情况吗?可能IE9浏览器对Arial的处理不一样?
-
没有变化——我从 .grayDecorative 类中删除了 font-family: Arial,它的效果为零。尽管 h2 中的字体设置为 16pt,但 IE9 上的 h2 字体要大得多。
-
对于屏幕显示,最好将大小设置为
em或px,因为pt是打印比例。您是否使用其中一种单位检查过字体大小,看它是否更标准化?
标签: html css internet-explorer-9