【发布时间】:2014-05-16 23:25:21
【问题描述】:
有时您不希望下划线盲目地穿过带下划线的页面标题!
有没有办法优雅地自动禁用某些小写字符的下划线?
在这些情况下,最好不要在这些小写字母下划线,例如 {g,q,p,j, y}
CSS:
h1{ text-decoration: underline; }PAGE TITLE:
George quietely jumped!
A) 有没有任何方法可以实现如此精细和高级的样式规则?
B) 还有哪些其他拉丁字符我们要取消下划线吗?
C) 如何设置下划线的粗细?
【问题讨论】:
-
CSS 不能用于 underline 属性,因为它使用 'baseline' 属性。
-
唯一可能的方法是将您想要“取消”下划线的每个字母都包裹在一个跨度类中并应用
text-decoration: none,或者同样hacky的东西 -
有一个 2002 年的 Firefox 错误来实现你想要的,所以这可能是不可能的:Bug 156881 - (text-decoration-mode) Underline should skip character/part-of-character that is below the base line
-
我认为...使用 javascript,您可以检测这些特定字母,让 javascript 将它们包装在一个跨度中,并放置适当的 CSS 样式来解决问题。
-
@Sam 看看这个:medium.com/designing-medium/7c03a9274f9
标签: javascript css underline