如何手动管理HTML中的文本换行
How to manually manage text wrapping in HTML
当与设计师合作时,他们通常对完整HTML页面中的换行非常挑剔。假设我正在使用固定布局(无响应),并且设计人员不喜欢文本的包装方式,我可以:
- 调整
padding-right
- 添加手动
<br>
换行 - 添加手动
以避免中断(通常用于孤儿控制)
(在我的例子中,我是为特定的移动设备设计的,所以我知道屏幕大小,并且可以控制字体。此外,让设计师高兴是不容商量的。
我一直遇到的问题是,文本或布局将在稍后更新,而这种特定的换行关系的遗物,不再适用,引入了我们需要修复的问题。
所以我想知道是否有人可以建议一个策略:
- 允许完全任意控制单独的换行情况下;但是,
- 不会让一切都难以维持下去
我愿意接受面向过程、算法(javascript)或css的建议。
这是我选择的策略。时间会告诉我们它的可维护性。
- 禁止编辑文本内容
- 通过添加改变文本流动方式的CSS类来修复换行,但不使用已经用于控制布局的属性,如宽度或填充
.tighten {
letter-spacing: -0.011em;
}
.loosen {
letter-spacing: 0.011em;
}
.hyphenate {
-webkit-hyphens: auto;
-webkit-hyphenate-limit-after: 4;
-webkit-hyphenate-limit-before: 4;
}
事实证明,这些难以察觉的间距变化会对换行产生巨大的影响。我实际上有这些类的几个变体,所以我可以尝试逐步增加或减少空间来修复包装。
在严重的情况下,我使用连字符类(在这种情况下,我只针对iOS)。
在将来的修订中,当我们更改div中的文本时,我们可以从该div中删除tighten, loose或连字符类,并查看是否有需要纠正的换行问题。如果有,我们通过最初的试错,看看哪个类提供最好的外观。
使用<pre>
标记,这样可以插入预格式化的文本。
相关文章:
- Internet Explorer中的文本换行错误
- 使用jQuery的输入字段文本换行
- 脚本图像获胜't用文本换行
- D3具有矩形和文本换行的水平树布局
- 标记内的文本换行
- 使用 jQuery 将文本换行在
标记内 - 如何在文本换行时在图像下方保留填充
- 溢出隐藏不会文本换行
- d3.js径向树布局可变节点长度/文本换行节点描述
- 如何手动管理HTML中的文本换行
- jQuery动画slidelleft没有文本换行
- 将文本换行到并由
使用jquery - 文本换行到列
- 如何在文本换行时减少字母间距
- 文本换行选项-建议
- 围绕span文本换行元素
- 在Polymer 1.0中带有绑定的文本换行元素
- Var文本换行或任何格式不工作
- 如何在javascript中拖动图像/元素时导致实时文本换行
- 使用 javascript/jquery 将带有强标签的文本区域中突出显示的文本换行