【问题标题】:Why is IE not adhering to my column widths?为什么 IE 不遵守我的列宽?
【发布时间】:2012-09-11 16:19:04
【问题描述】:

这一直让我疯狂地试图解决

代码:http://pastebin.com/rqyw35jG

首先,我在标准模式下进行渲染。 我在 IE 中有一个表格,宽度 = 100%,表格中的所有列都具有指定宽度除了最后一列。 IE 的预期行为是调整最后一列的大小,使其延伸到页面。这或多或少有效。但是;

某些情况似乎会破坏表格宽度并导致 IE 随意调整表格大小。

  1. 该表包含一个跨所有列合并的行和
  2. 此合并行包含的文本足以填满整个单元格并且
  3. 在列宽度未指定的单元格之一中输入了足够的文本,导致文本换行。

当这 3 个条件发生时,所有列都会轻微移动。文本仍然换行,除非您测量它们,或者将页面与没有换行文本的版本进行比较,否则您通常不会注意到列的大小错误。

这甚至应该在标准模式下发生吗?

代码:

<%@ Page Language="VB" %>
<%@ Import Namespace="Microsoft.SharePoint.Client" %>
<%@ Import namespace="System.Data" %> 
<%@ Import Namespace="System.Data.SQLClient" %>

<script runat="server">
    Protected Sub Page_Load(sender As Object, e As System.EventArgs)

    End Sub
</script>

<%

 %>

<!DOCTYPE html />
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
<table style="width:100%;">
    <tr>
        <td style="width:500px;">egqwgw gqgqwgqg qwgqgqg qgwgqgqg qwgqgg</td>
        <td style="width:500px;">gqgqwgqg gqwgqgqgq gqgqgqg qgg</td>
        <td>If too much text is entered into this column, the column sizes will begin to change. wehwehweh hwehwh whhwhwh hwehwhwh</td>
    </tr>
    <tr>
        <td>a gqwgqwg gqgqw </td><td>gqgqgqg gqgqg</td><td></td>
    </tr>
    <tr>
        <td colspan="3">Columns only move if text on this line is filling out the whole width of the page. gqwgqwggqg qgqgqwgqg qgqwgqgqg gqgwqgqg gqgqgqgqg qgqgqgqg gqgggqg 
            qgwgqgqg gqgqgqwgwg qgqwgqgqgq gqgwgwgqg gqgwgq gqwgwgqgqwg qgwgqgqgqwg 
            qwgqwgqgqg qgwgqgqqg gqwgqwgqwgwqg gqgwgqgwg qwgqwgqgqgq qwgqgqgqg gwqgqgqg 
            qggqwgqg qggwqgqg
        </td>
    </tr>
</table>

</body>
</html>

【问题讨论】:

  • 代码或它没有发生!不,但真的,我们能看到代码吗?小提琴会做得很好。
  • 已添加代码。您应该能够通过删除列中的一些文本来验证问题。
  • 请将问题代码插入您的帖子中,仅链接到代码而不在此处发布也违反了 Stackoverflow 政策。
  • 请发布一个演示该问题的实际示例(真实 HTML 代码)。并定义“轻微”。
  • 在我发布的示例中,第一列的宽度为 500px。最右列有文字换行时,该列实际渲染宽度为640。无文字换行时,该列实际渲染宽度为760。

标签: html internet-explorer internet-explorer-8


【解决方案1】:

您的文档类型错误,我不确定它是否将 IE 置于怪异模式,但听起来很像。去掉空格和反斜杠:&lt;!DOCTYPE html&gt;

确保在 doctype 之前也没有显示任何代码,因为这会使 IE 陷入怪癖。

这是否适用于现代浏览器,还是 IE 是唯一给您带来问题的浏览器?

【讨论】:

  • 修复了文档类型,但没有任何不同。我尝试按 F12,它允许您在各种兼容模式下测试页面。它在 Opera 和 IE9 中是正确的,但是在 IE8 和 7 标准模式以及 quirks 模式下都被破坏了。 7、8 和 9 都以不同的列宽呈现此页面。
  • @Trent - 然后你需要把它放到网上,因为大多数人不使用 VB 或 ASP 或其他任何东西,它使我们更容易测试。
猜你喜欢
  • 2015-09-12
  • 2019-09-24
  • 2018-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
  • 2013-11-02
相关资源
最近更新 更多