pre标签对于HTML中的代码块和在编写脚本时调试输出非常有用,但是我如何使文本换行而不是打印出一行呢?
当前回答
如果你使用prism或任何代码格式化库,那么你将需要修改展位前和代码标签如下:
pre {
overflow-x: auto !important;
white-space: pre-wrap !important; /* Since CSS 2.1 */
white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
white-space: -pre-wrap !important; /* Opera 4-6 */
white-space: -o-pre-wrap !important; /* Opera 7 */
word-wrap: break-word !important; /* Internet Explorer 5.5+ */
}
code{
white-space: normal !important;
}
其他回答
这就是我所需要的。它可以防止文字断裂,但允许在预区域的动态宽度。
word-break: keep-all;
我发现跳过pre标签并在div上使用空白:pre-wrap是一个更好的解决方案。
<div style="white-space: pre-wrap;">content</div>
<pre>-Element代表“预格式化文本”,用于在其标记之间保持文本(或其他内容)的格式。因此,在<pre>-Tag中实际上不打算自动换行或换行
元素中的文本以固定宽度的字体(通常是Courier)显示,并且保留空格和换行符。
来源:w3schools.com,强调由我自己制作。
你可以:
pre { white-space: normal; }
要保持单行字体,但添加换行,或:
pre { overflow: auto; }
这将允许固定大小的水平滚动长行。
我把@richelectron和@user1433454的答案结合起来。 它工作得很好,并保留了文本格式。
<pre style="white-space: pre-wrap; word-break: keep-all;">
</pre>
推荐文章
- 使伸缩项目正确浮动
- 如何取消最大高度?
- 形式内联内的形式水平在twitter bootstrap?
- 自定义元素在HTML5中有效吗?
- 如何选择在最后一个子元素之前的元素?
- 如何触发自动填充在谷歌Chrome?
- CSS变换,锯齿边缘在铬
- 创建圈div比使用图像更容易的方法?
- 强迫孩子服从父母的弯曲边界在CSS
- 为什么Chrome浏览器不正确地确定页面是在不同的语言,并提供翻译?
- 在CSS中@apply是什么?
- 在网页上用鼠标模拟震颤(例如帕金森病)?
- Bootstrap抛出Uncaught错误:Bootstrap的JavaScript需要jQuery
- 如何改变文本区域的边框颜色:焦点
- 我如何设置背景颜色为文本的宽度,而不是整个元素的宽度,使用CSS?