我有以下HTML标记(简化)
<div class="controlDiv" style="white-space: nowrap">
<div class="pre"></div><input style="width: 100%"><div class="post"></div>
<div class="validationMsg" style="white-space: normal">some message</div>
</div>
内部Div(validationMsg)动态显示,在FF中文本消息被正确包装,它不长于上面的输入字段。
但是在IE8中忽略了空格属性,文本不会自动换行。我在IE开发人员工具中做过一些实验,我已经转换了空白属性,当正确应用包装时(但是在输入字段前后符号格式化时,我们需要禁用包装)
代码看起来有点乱,但使用的框架非常严格,所以我只能在controlDiv中附加一个新的div或段落。
答案 0 :(得分:1)
它可能不是最好的解决方案,但IE的行为是 nowrap从父IS APPLIED到validationMsg 的布局,所以不可能自己设置“white-space:normal”。我的解决方案是为validationMsg设置一个包装器,其样式为“width:100%(或任何你想要应用于validationMsg div的大小); white-space:normal”,所以布局看起来对IE以及其他浏览器都很好。< / p>
以下是我发布的示例:http://jsbin.com/edeqam/1
它在所有浏览器上看起来都是一致的。