IE7正在剪辑我的文字。我该如何调整态度?

时间:2009-03-11 14:46:08

标签: html css internet-explorer-7

几天前,我重新涂了我的网站。这个皮肤的开发主要是使用safari进行的,正如预期的那样,使用firefox和opera都可以很好地完成。我不得不为IE7做一些小的调整,但没什么,除了一个问题......

在IE中,帖子的日期指示符被截断。这个问题似乎只发生在左浮动div内的嵌套span标签上。我想我需要浮动div来布局屏幕左侧和右侧的文本。

你们中的任何人都知道如何阻止IE7剪辑我的文字吗?

编辑:我有点放弃这个问题。我的脚本现在检查IE7并提供它有限的引擎可以处理的简化HTML。它适用于IE8,所以,就目前而言,IE7的特殊情况将不得不......

9 个答案:

答案 0 :(得分:19)

在IE6或7剪辑文本底部的大多数情况下,只需添加:

line-height: normal;

有关的CSS规则。应该很好地解决它,但正如你所理解的,它也扩展了盒子。

答案 1 :(得分:11)

我发现有一个黑客修复了IE中切断文本的问题。我注意到我标题中的最后一行是唯一被切断的行。

我原来的CSS在IE7中切断了最后一行,但在其他浏览器中看起来很好:

h2 {
   font-size: 22px;
   line-height: 1em;
}

在此处查看问题图片:https://skitch.com/pablohart/f4g3i/windows-7-x64

我做的修复包括简单地在底部添加填充,然后以负边距将填充物取回。像这样:

h2 {
   font-size: 22px;
   line-height: 1em;
   padding-bottom: 5px;
   margin-bottom: -5px;
}

请参阅此图片中的修复图片:https://skitch.com/pablohart/f4g4h/windows-7-x64

line-height:normal; 的问题在于它采用字体的默认行高,通常为1.3em。

答案 2 :(得分:1)

尝试添加overflow:visible;到你的.postdate课程。也许这有帮助。

答案 3 :(得分:1)

我有类似的问题。我将跨度改为div,问题解决了。我认为IE7可能在跨度上处理行高问题。 Haven没有证实这是个问题。还有其他CSS元素。 (使用别人的代码。)但是从跨度改为div(块)解决了这个问题。

答案 4 :(得分:0)

对于.bigdate类,尝试用填充替换margin;在我看来,这与IE的保证金处理有关。

答案 5 :(得分:0)

为.title添加特定高度为我修复了它(在IE6中):

.title {
    PADDING: 0 10px 0 0; MARGIN-top: 0.3em; FLOAT: right; height: 1em;

答案 6 :(得分:0)

尽管无法在我当前的机器上测试它:我怀疑它是hasLayout bug。处理它的方法列在该链接的“properties”部分。

答案 7 :(得分:0)

根据我的经验,它总是被剪辑的文本的底部,并且由于重叠的划分而基本上也是如此。如果您能够确保div不重叠,那么问题就会得到解决。除了添加溢出:可见有时确实有帮助。

答案 8 :(得分:0)

尝试添加

div.postmeta { height: 100px; }
div.postdate { height: 75px; }

任意高度值...但你知道你想要的确切高度。这应该使文本容器不会在IE7中剪切。