con*_*att 45 html css whitespace
在HTML中保留空格的最佳方法是什么?我们有很多页面会从我们的数据库中删除数据,并且数据中可能包含多个空格.保存数据的呈现HTML元素与锚标记不同(<a>), spans (<span>), table rows (<tr>, <td>, etc.
现在最容易做的就是添加一个像这样的全局css类:
body a, span, tr, td { white-space: pre; }
Run Code Online (Sandbox Code Playgroud)
我想知道是否有更好的方法来实现它,而无需为每个单独的HTML元素分配一个类.
Dio*_*ane 73
我会使用相同的技术,但在需要它的数据类包装器中:
.data a, .data span, .data tr, .data td { white-space: pre; }
Run Code Online (Sandbox Code Playgroud)
HTML:
<div class="data">
....
</div>
Run Code Online (Sandbox Code Playgroud)
Las*_*nal 21
<pre>no need for style</pre>
Run Code Online (Sandbox Code Playgroud)
通过 替换空格有什么问题?这应该在任何元素内部工作并保留渲染输出中的空格.
这取决于您是否希望保留某些元素中的所有空格以及在那里应该发生什么.假设没有可能干扰的CSS规则,您的CSS可以简化为
a, span, tr { white-space: pre; }
Run Code Online (Sandbox Code Playgroud)
因为a
元素总是在其中,body
并且td
默认情况下从中继承属性tr
.
如果您只希望防止多个空格折叠,而不是强制将固定除法划分为行,那么white-space: pre-wrap
或者用不间断空格替换空格可能更合适.
最后,将规则限制为选定元素的需要和可能性在很大程度上取决于如何进行选择.也许你可以选择性地设置white-space
到pre
(或pre-wrap
)到封装的相关部分,记住,如果不是内部元素设置的属性继承的一些元素.
您也可以打破继承:你可以设置white-space: pre
一个上table
例如元素,如果你想使该规则适用于大部分的内容,并设置white-space: normal
对这些行或单元格的地方不适用.
归档时间: |
|
查看次数: |
64423 次 |
最近记录: |