![xcolor、ulem 和 no-break 空格之间的交互](https://linux22.com/image/338989/xcolor%E3%80%81ulem%20%E5%92%8C%20no-break%20%E7%A9%BA%E6%A0%BC%E4%B9%8B%E9%97%B4%E7%9A%84%E4%BA%A4%E4%BA%92.png)
答案1
正如文档所述(我强调):
下划线特别支持几种文本格式化命令:
\-
,,,,,,,,,,,,,,。不支持显示 数学运算。\
~
\\
\newline
\linebreak
\nolinebreak
\penalty
\hskip
\hspace
\hfil
\hfill
\hss
特殊命令确实存在一个问题:它们结束一个组,因此任何本地分配都会丢失。
如果你想要彩色文本,你应该从外面开始着色\uline
。你也可以使用文档中描述的命令来获取彩色规则:
\documentclass{article}
\usepackage{xcolor}
\usepackage[normalem]{ulem}
\newcommand\coloruline{\bgroup\markoverwith
{\textcolor{ulinecolor}{\rule[-0.5ex]{2pt}{0.4pt}}}\ULon}
\colorlet{ulinecolor}{green}
\begin{document}
\textcolor{blue}{\coloruline{TeX StackExchange}}
\end{document}