最近我回答了一个问题,提问者希望对包含在 a
元素内的整个文本应用 text-decoration: underline;
,但不包括被 span
包裹的文本,因此代码大致如下:
<a href="#"><span>Not Underline</span>Should Be Underlined</a>
因此,只是简单地给予
span {
text-decoration: none;
}
这不会去掉包含在 span
元素内部的文本下划线。
但是这将去掉下划线。
span {
text-decoration: none;
display: inline-block;
}
所以我将 span
设置为inline-block
,它起作用了,这通常是我做事的方式。但是当需要解释为什么这样做实际上可以去除下划线时,我却无法解释,而只使用text-decoration: none;
则不能。
display: block;
也无法去除下划线,对吗? - Mr. Aliendisplay: block;
时,它并没有被移除,让我感到困惑。 - Mr. Alien