【发布时间】:2019-09-12 02:01:26
【问题描述】:
例如,如果我有:
td { font-size: 1.3em }
h2 { font-size: 2em }
h3 { font-size: 1.6em }
p { font-size: 1.2 }
我的表格单元格中有标题/段落,我知道我可以通过以下方式避免混合字体大小:
td h2, td h3, td p { font-size: 1em }
这将导致我的表格单元格中的标题/段落的字体大小为 1.3em(td 的字体大小)。
但我正在寻找的是一种很好、干净的方式,让每个子元素都拥有原始字体大小,而不是父元素。
我真的很想避免做以下事情(当然我想避免使用 px):
td h2 { font-size: 1.54em } // 1.3 x 1.54 ~ 2
td h3 { font-size: 1.23em } // 1.3 x 1.23 ~ 1.6
td p { font-size: 0.92em } // 1.3 x 0.92 ~ 1.2
对于熟悉 LESS 的任何人,我正在使用它,并且认为我应该能够使用它来为我进行计算,例如使用访问器:
td h2 { font-size: h2['font-size'] / td['font-size'] }
这至少会使用原始值进行计算,但感觉和上面一样笨拙,此外,似乎 LESS 不再支持访问器了。
这在概念上似乎很简单,我觉得答案在盯着我看,但我一直在努力解决这个问题,但在任何地方都找不到答案。
【问题讨论】:
-
好吧,我会告诉你使用像素;) - 它是一个相对单位,就像 em,你为什么觉得你不能使用它们?
-
px 会带来可访问性问题(无缩放),并且比使用相对单位(例如 rems)更难维护。