带有HTML和CSS的可扩展花括号
有没有一种简单的方法可以用HTML和CSS在LaTeX中模拟带有HTML和CSS的可扩展花括号,html,css,Html,Css,有没有一种简单的方法可以用HTML和CSS在LaTeX中模拟amsmath提供的cases环境 例如,在LaTeX中,可以写: \documentclass{article} \usepackage{amsmath} \begin{document} \[ \text{2014-01-05} \quad \begin{cases} \text{Lorem ipsum \ldots} \\ \text{Lorem ipsum \ldots} \\ \text{Lorem ipsum \ldo
amsmath
提供的cases
环境
例如,在LaTeX中,可以写:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\text{2014-01-05} \quad
\begin{cases} \text{Lorem ipsum \ldots} \\
\text{Lorem ipsum \ldots} \\
\text{Lorem ipsum \ldots} \\
\end{cases}
\]
\end{document}
产生:
我希望能够在HTML和CSS中做同样的事情
到目前为止,我已经尝试过这个(请参见):
HTML:
我希望使用这种样式在博客页面上显示博客文章的元数据。然而,到目前为止,我所尝试的方法存在一些问题
{
当前设置为固定大小,不会随博客文章的元数据动态缩放。这可以在中看到,其中的“标记”行现在位于花括号的底部下方。如果不可能进行动态缩放,我愿意满足于空白:nowrap;
,溢出:隐藏;
,和文本溢出:省略号;
-删除博客文章的元数据,只保留三行文本,而不考虑元数据的长度因此,我的问题是,是否有一种方法可以修复我迄今为止尝试过的问题,以解决这些问题,或者是否有更好的方法来处理HTML和CSS。最好的解决方案是只使用HTML和CSS。您可以轻松地使用它。您只需要一个
:before
伪元素把卷曲的中间部分放进去,使它的比例非常好
问题在于潜在的浏览器支持。虽然MDN报告了从IE9开始运行的核心功能,但从我在MDN上看到的情况来看,旧版IE应该(带有-ms
前缀)支持您在这种情况下需要的所有功能
编辑:
。遗憾的是,IE10及以下版本中存在混乱。不,在HTML和CSS中真的没有办法模仿这些东西。如果你尝试使用大括号“{”,它会变得非常难看,因为笔划宽度会增加。对于200%或250%,这可能是可以忍受的,但对于700%来说则不是 实用的方法是使用,这是一个广泛使用的JavaScript库,用于格式化数学表达式。它还可以处理LaTeX的一个子集:
<!doctype html>
<title>Big brace demo</title>
<script src=
http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML
></script>
\[
\text{2014-01-05} \quad
\begin{cases} \text{Lorem ipsum …} \\
\text{Lorem ipsum …} \\
\text{Lorem ipsum …} \\
\end{cases}
\]
大支架演示
\[
\正文{2014-01-05}\n
\开始{cases}\text{Lorem ipsum…}\\
\文本{Lorem ipsum…}\\
\文本{Lorem ipsum…}\\
\结束{cases}
\]
这里的要点是MathJax处理HTML文档并识别和实现LaTeX代码(从HTML角度来看,这只是字符数据)
或者,您可以使用MathJax实现MathML的一个子集:
<!doctype html>
<title>Big brace demo 2</title>
<script src=
http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML
></script>
<math>
<mtext>2014-01-05 </mtext>
<mfenced open="{" close="">
<mtable>
<mrow><mtext>Lorem ipsum …</mtext></mrow>
<mrow><mtext>Lorem ipsum …</mtext></mrow>
<mrow><mtext>Lorem ipsum …</mtext></mrow>
</mtable>
</mfenced>
</math>
大括号演示2
2014-01-05
同侧眼线…
同侧眼线…
同侧眼线…
原则上,您可以只使用MathML代码,而不使用MathJax支持,但是a)这不是真正的HTML(即使HTML5允许以这种方式包括MathML代码,即使是在HTML序列化中),b)浏览器支持会受到限制,主要是Firefox。看起来并不像一个合适的大括号。大括号是一个图像,如果需要的话,可以明显不同。还有什么方法可以改变MathJax使用的字体吗?经过一些实验后,我发现CSS
body
方法不会改变它。@Adam,这是一个有趣的问题但是实际上是一个单独的问题,可能应该单独讨论(在检查文档之后).Hmm,好的。我必须进一步研究这个问题。无论如何,+1。感谢你的建议,尽管目前的情况是,我更喜欢只依赖HTML和CSS的解决方案,所以我接受了Niels的答案。未来的提示:cdn.mathjax.org即将结束,请查看迁移提示(也许还可以为将来的读者更新你的文章)。
<!doctype html>
<title>Big brace demo</title>
<script src=
http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML
></script>
\[
\text{2014-01-05} \quad
\begin{cases} \text{Lorem ipsum …} \\
\text{Lorem ipsum …} \\
\text{Lorem ipsum …} \\
\end{cases}
\]
<!doctype html>
<title>Big brace demo 2</title>
<script src=
http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML
></script>
<math>
<mtext>2014-01-05 </mtext>
<mfenced open="{" close="">
<mtable>
<mrow><mtext>Lorem ipsum …</mtext></mrow>
<mrow><mtext>Lorem ipsum …</mtext></mrow>
<mrow><mtext>Lorem ipsum …</mtext></mrow>
</mtable>
</mfenced>
</math>