0

在这里抓着稻草,但有人找到了在 Firefox 3.0.7 中包装文本的解决方案吗?

文本应该像其他浏览器一样包裹在容器中。

示例: http: //jsfiddle.net/4t7Ut/(显然在FF3.0.7中查看)

#container {
    border: 1px dashed;
    width: 100px;
}

.text-to-wrap {
    white-space: pre-wrap; /* css-3 */
    white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
    white-space: -pre-wrap; /* Opera 4-6 */
    white-space: -o-pre-wrap; /* Opera 7 */
    word-wrap: break-word; /* Internet Explorer 5.5+ */
}

...

<div id="container">
<div class="text-to-wrap ">VWvU3dpVq5wJio6oFE82pmQuBTRzbii4dLd4NGBr332V2P4Skx8GwLozZrczNoRPmqWSrxnLEKh5PBZ6s3AjMFX3ftLHyuR7RGSA</div>
</div>
4

2 回答 2

1

要使内容换行,使其分成多行,每行包含尽可能多的字符(当然最后一行除外),您需要<wbr>在文本内容中的每个字符之后添加标签,以使即使在像 Firefox 3 这样的古老浏览器上,事情也是如此。您可以为此目的使用客户端脚本:

<script>
var cont = document.getElementById('container').getElementsByTagName('div')[0];
cont.innerHTML = cont.innerHTML.replace(/(.)/g, '$1<wbr>');
alert(cont.innerHTML);
</script>

允许这样的破坏几乎是不够的。人类和计算机语言都有自己的换行规则。因此,<wbr>标签应仅插入合适的位置,手动或使用适合内容的算法。

除了<wbr>,您还可以使用它的字符级对应物零宽度空格 ( &#x200b;)。非常旧的浏览器不支持它,尽管 Firefox 3 似乎可以使用它。

于 2012-10-30T12:57:50.697 回答
0

尝试一下:

用来width:100%; display:inline-block;_.text-to-wrap

于 2012-10-30T10:51:51.983 回答