我有以下列表:
\begin{itemize}
\item És associativa:$\qquad(x+y)+z=x+(y+z)$
\item És commutativa:$\qquad x+y=y+x$
\item Té element neutre:$\qquad\exists 0\in\K : 0+x=x+0=x$
\item Té element invers:$\qquad\forall x\in\K\;\exists(-x)\in\K : x+(-x)=(-x)+x=0$
\end{itemize}
但我想将其对齐为
\begin{tabular}{ll}
És associativa:&$\quad(x+y)+z=x+(y+z)$\\
És commutativa:&$\quad x+y=y+x$\\
Té element neutre:&$\quad\exists 0\in\K : 0+x=x+0=x$\\
Té element invers:&$\quad\forall x\in\K\;\exists(-x)\in\K : x+(-x)=(-x)+x=0$\\
\end{tabular}
我怎样才能“混合”它们?
答案1
这里有一个次要的增强这解决方案。
使用包裹array
您可以定义一个新的列类型L
,它会自动在使用它的列的开头插入项目符号:
笔记:
- 也可以通过以下方式实现包裹
collcell
。这在下面的代码中被注释掉了,但是只有当您想对第一列中的条目进行进一步处理时才有意义。
代码:
\documentclass[a5paper]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath} % add packages you need here ...
\usepackage{array}
\newcolumntype{L}{>{\labelitemi~~}l<{}}
%% Don't need above two lines if want to use `collcell` pacakage
%\usepackage{collcell}
%\newcommand*{\AddBullet}[1]{\labelitemi~#1}%
%\newcolumntype{L}{>{\collectcell\AddBullet}{l}<{\endcollectcell}}
\newcommand*{\K}{\mathbf{K}}% Not sure what \K is supposed to be
\begin{document}
\begin{tabular}{L l}
És associativa: & $\quad(x+y)+z=x+(y+z)$\\
És commutativa: & $\quad x+y=y+x$\\
Té element neutre: & $\quad\exists 0\in\K : 0+x=x+0=x$\\
Té element invers: & $\quad\forall x\in\K\;\exists(-x)\in\K : x+(-x)=(-x)+x=0$\\
\end{tabular}
\end{document}
答案2
您可以这样做(\textbullet
插入项目符号,并且您必须用 标记新行&
。为了更加灵活,您可以使用\labelitemi
而不是\textbullet
正如 Juri 在他的评论中所说的那样):
%http://tex.stackexchange.com/questions/75717/how-can-i-mix-itemize-and-tabular-environments#comment161963_75717
\documentclass[a5paper]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath} % add packages you need here ...
\begin{document}
\begin{tabular}{lll}
\labelitemi & És associativa:&$\quad(x+y)+z=x+(y+z)$\\
\labelitemi & És commutativa:&$\quad x+y=y+x$\\
\labelitemi & Té element neutre:&$\quad\exists 0\in\K : 0+x=x+0=x$\\
\labelitemi & Té element invers:&$\quad\forall x\in\K\;\exists(-x)\in\K : x+(-x)=(-x)+x=0$\\
\end{tabular}
\end{document}
答案3
如果您自己管理一些框宽度,则无需混合这两个环境。以下 MWE 显示了myitemize
基于 的环境itemize
,该环境跨越页面边界并设置项目 ( ) 的宽度(\myitemlen
如果在环境的开头设置)。否则,它将采用每个指定项目的自然宽度。
\documentclass{article}
\usepackage[utf8]{inputenc}% http://ctan.org/pkg/inputenc
\newlength{\myitemlen}
\newcommand{\myitem}[1]{%
\olditem\ifdim\myitemlen>0pt
\makebox[\myitemlen][l]{#1}%
\else
#1%
\fi}
\newenvironment{myitemize}
{% \begin{myitemize}
\begin{itemize}\let\olditem\item\let\item\myitem}
{\end{itemize}}% \end{myitemize}
\newcommand{\K}{\mathbf{K}}
\begin{document}
\begin{myitemize}
\item{És associativa:} $(x+y)+z=x+(y+z)$
\item{És commutativa:} $x+y=y+x$
\item{Té element neutre:} $\exists 0\in\K : 0+x=x+0=x$
\item{Té element invers:} $\forall x\in\K\;\exists(-x)\in\K : x+(-x)=(-x)+x=0$
\end{myitemize}
\begin{myitemize}
\settowidth{\myitemlen}{Té element neutre:\qquad}
\item{És associativa:} $(x+y)+z=x+(y+z)$
\item{És commutativa:} $x+y=y+x$
\item{Té element neutre:} $\exists 0\in\K : 0+x=x+0=x$
\item{Té element invers:} $\forall x\in\K\;\exists(-x)\in\K : x+(-x)=(-x)+x=0$
\end{myitemize}
\end{document}
答案4
另一个简单的解决方案
\documentclass[a5paper]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath} % add packages you need here ...
\usepackage{array}
\newcommand*{\K}{\mathbf{K}}
\begin{document}
\begin{itemize}
\item \parbox{3.5cm}{És associativa:} \parbox{6cm}{$\quad(x+y)+z=x+(y+z)$}
\item \parbox{3.5cm}{És commutativa:} \parbox{6cm}{$\quad x+y=y+x$}
\item \parbox{3.5cm}{Té element neutre:} \parbox{6cm}{$\quad\exists 0\in\K : 0+x=x+0=x$}
\item \parbox{3.5cm}{Té element invers:} \parbox{7.5cm}{$\quad\forall x\in\K\;\exists(-x)\in\K : x+(-x)=(-x)+x=0$}
\end{itemize}
\end{document}