Input 为什么表格布局中的输入宽度100%在IE7中自动扩展?

Input 为什么表格布局中的输入宽度100%在IE7中自动扩展?,input,internet-explorer-7,internet-explorer-6,width,tablelayout,Input,Internet Explorer 7,Internet Explorer 6,Width,Tablelayout,我有一个具有约束宽度的表格和具有百分比宽度的表格单元格。在单元格中,我输入了style=width:100%的文本区域,没有任何边距、填充或边框,但有一些较长的内容,没有空格。为什么IE7和IE6会扩展输入以匹配内容长度 应用表格布局:固定到表格不是一个选项-I中继在列上扩展以保持其内容,例如,带有输入标签的列应与标签长度匹配 下面是完整的示例。我已经检查过这是在标准模式下呈现的有效HTML5 <!doctype html> <meta charset="utf-8" />

我有一个具有约束宽度的表格和具有百分比宽度的表格单元格。在单元格中,我输入了style=width:100%的文本区域,没有任何边距、填充或边框,但有一些较长的内容,没有空格。为什么IE7和IE6会扩展输入以匹配内容长度

应用表格布局:固定到表格不是一个选项-I中继在列上扩展以保持其内容,例如,带有输入标签的列应与标签长度匹配

下面是完整的示例。我已经检查过这是在标准模式下呈现的有效HTML5

<!doctype html>
<meta charset="utf-8" />
<title>ie6 ie7 input bug</title>
<style>

  input, textarea {
    width: 100%;
    margin: 0; padding: 0; border: 0;
  }

  table {
    background: yellow;
    width: 500px;
  }

</style>
<body>
  <table>
    <tr>
      <td style="width: 15%;">
        <input value="VeryLongTextWithoutSpaces" />
      </td>
      <td> <br/><br/><!-- give height --> </td>
    </tr>
  </table>
  <br/> <!-- textarea example -->
  table>
    <tr>
      <td style="width: 15%;">
        <textarea>VeryLongTextWithoutSpaces</textarea>
      </td>
      <td> <br/><br/><!-- give height --> </td>
    </tr>
  </table>
</body>
我发现,如果输入不包含长单词,对输入应用行高会有所帮助。这可能对我来说足够了,我可以计算出正确的线高度,但欢迎使用其他解决方案,因为可能更适合其他解决方案


最后我在这里找到了解决办法:添加残酷的单词break:breakall;是一种解决方案。

缺少开始和结束html标记。这并不能解决问题,只是说,@Paul-my table的可能副本用于液体布局宽度100%它不会改变问题,因此我无法将宽度(以像素为单位)应用于td@Grillz标记是可选的-这是有效的HTML5,使用w3验证器检查。我自己关于应用行高的回答对于没有空格的长输入无效,因此我正在重新编辑我的问题