Shiny中MathJax对齐问题:如何差异化应用CSS实现部分公式居中
解决Shiny中MathJax公式左对齐与部分居中的差异化设置
一、全局左对齐+部分居中的CSS方案
保留你已有的全局左对齐CSS,同时新增自定义类用于覆盖特定公式的对齐规则:
tags$style(HTML(" /* 全局所有MathJax公式默认左对齐 */ div.MathJax_Display { text-align: left !important; } /* 自定义类:让包裹内的MathJax公式居中 */ .center-math div.MathJax_Display { text-align: center !important; } "))
之后按需求包裹公式即可:
- 左对齐公式(全局默认):
withMathJax(tags$p("左对齐示例:$$E=mc^2$$"))
- 居中公式(用自定义类包裹):
withMathJax(tags$div(class = "center-math", "居中示例:$$\\sum_{i=1}^n i = \\frac{n(n+1)}{2}$$"))
二、直接给withMathJax(tags$p())设置居中
完全可以直接指定,有两种简单实现方式:
方式1:给p标签添加行内样式
withMathJax(tags$p(style = "text-align: center;", "直接居中的公式:$$\\int_a^b f(x)dx = F(b)-F(a)$$"))
方式2:复用自定义的.center-math类
withMathJax(tags$p(class = "center-math", "通过类居中的公式:$$\\int_a^b f(x)dx = F(b)-F(a)$$"))
注:因为全局CSS用了!important强制左对齐,所以自定义的居中规则也必须加!important才能覆盖全局设置。
内容的提问来源于stack exchange,提问作者user1329307
相关产品推荐
相关产品推荐

