php – 在表格列中按小数点,HTML5,CSS3对齐十进制数据

我正在构建一个wordpress插件,它生成一个 HTML表格并通过短代码发送到gravityforms html块.

我的问题是单元格内容可以包含:

> 23.24
> 1,234.665
> 123.4

等等…

请注意不同的小数位数.

有没有黑客&以小数点对齐此列数据的最佳实践方法?在这种情况下,对齐权将不起作用.

插入0是不可接受的,因为这表示不存在准确度.

如您所见,我试图使用align =“char”char =“.”在td元素里面没有运气.

任何人都可以提供帮助的任何帮助将不胜感激.

非常感谢.

有没有一种方法可以使用printf(“%8.3f”,d1)或类似的方法而不实际打印到屏幕上?例如构造变量d1供以后使用,但实际上不打印它?

没有直接的方法可以做到这一点. HTML 4.01具有align = char,但没有任何浏览器支持. CSS 2.0有一个对应的,使用text-align属性,同样缺乏支持,所以它从CSS 2.1中删除. CSS3草案有一个很好的系统用于这种对齐,但如果没有(正确的)实现,则表示存在被从规范中删除的危险.

作为一种变通方法,您可以用不可见的东西(空白)右键填充值,这样当值向右对齐时,小数点标记就会对齐.有几种方法可以尝试实现此目的:

1)使用数字0但在其上设置一种样式,使其不可见,例如

123.4<span class=s>00</span>

.s { visibility: hidden; }

2)使用图SPACE U 2007,定义为具有与数字相同的宽度(当数字具有相等的宽度时),例如,

123.4&#x2007;&#x2007;

为了使其工作,你需要设置字体,使其包含U 2007.根据http://www.fileformat.info/info/unicode/char/2007/fontsupport.htm甚至Arial包含它,但我担心这可能不适用于仍在使用的旧版Arial.

3)使用不间断空格并使用ch单位(定义为具有数字0的宽度)将其宽度设置为所需的位数,尽管此单位相对较新且旧浏览器不支持.例:

123.4<span class=d2>&nbsp;</span>

.d2 { width: 2ch; display: inline-block; }

我可能会使用第一种方法.原则上,它的缺点是当CSS关闭时,数据包含零,这意味着关于准确性的错误信息,而在其他方法中,关闭“仅”关闭混乱布局.

(显而易见的是,数字必须具有相等的提前宽度,这样你才能对齐数字数据.这只意味着用于值的字体必须具有该属性.大多数字体都会在这方面做,但例如格鲁吉亚,Constantia和Corbel不会.)

相关文章

如何选择合适的 C++ Web 开发框架?
利用 C++ 框架构建高并发 Web 应用的策略
用 C++ 框架开发跨平台图形应用程序
golang框架中安全编码实践的最佳指南是什么?
golang框架与其他语言框架在设计理念上的区别有哪些?
C++ 图形框架与其他语言框架的比较