Text Wrap Regression Test
用途: 覆盖普通文本、white-space、pre、textarea 的所有换行场景。每个盒子宽度固定,方便直接看是否换行正确。
覆盖点
1. 普通文本自动换行
2. 长单词/连续 CJK 的强制断行
3. normal: 折叠空格与 \n
4. nowrap: 不自动换行
5. pre: 保留空格和 \n,不软换行
6. pre-line: 折叠空格,保留 \n,并软换行
7. pre-wrap: 保留空格和 \n,并软换行
8. break-spaces: 保留空格,并允许在空格处断行
9. pre 标签默认行为
10. textarea 多行 value / innerText
A. normal 自动换行
预期: 多个空格折叠成一个;源文本中的 \n 也折叠成空格;盒子宽度不足时自动换行。
AA BB CC DDDDDDDDDDDD EEEEEE FFFF
B. normal 长单词 / CJK 连续文本
预期: 没有空格可断时也要继续断行,不能整行溢出。
SuperLongTokenWithoutBreakPoints1234567890ABCDEFGHIJKLMN
这是连续中文文本没有空格也需要在宽度不足时继续断行否则会直接溢出
C. nowrap
预期: 空格和 \n 仍会先按 normal 折叠,但整段只保持单行,不自动换行。
AA BB CC DDDDDDDDDDDD EEEEEE FFFF
D. pre
预期: 保留连续空格和 \n;长行不软换行。
AA BB CC DDDDDDDDDDDD EEEEEE FFFF
E. pre-line
预期: 连续空格折叠,但源文本中的 \n 必须保留;每个硬换行后的长行还能继续软换行。
AA BB CC DDDDDDDDDDDD EEEEEE FFFF
F. pre-wrap
预期: 连续空格保留,\n 保留,长行继续软换行。
AA BB CC DDDDDDDDDDDD EEEEEE FFFF
G. break-spaces
预期: 连续空格保留,且窄盒子里能在空格序列中断行;结尾分隔符位置应能看出空格没有被吃掉。
AA BB CC |
H. pre 标签默认行为
预期: 不写 white-space 也应当按 pre 处理,保留空格和 \n。
PRE-1   A   B
PRE-2   C   D
PRE-3 long long long line
I. textarea 内联多行文本
预期: 直接写在 textarea 标签里的多行文本应保留 \n,并在盒子内继续软换行。
J. textarea.value 多行文本
预期: JS 写入 value 的多行文本与内联 textarea 行为一致。