CSS3的文本装饰模块包括一个text-underline-position属性,该属性指定是否应将下划线置于整个文本的下方:
或刚好低于基准线,使其与文字降序符号冲突:
好的,我们都知道下划线仅应作为最后的手段使用,但是……如果要使用下划线,最常用的方法是什么?每种下划线样式的优缺点是什么?
CSS3的文本装饰模块包括一个text-underline-position属性,该属性指定是否应将下划线置于整个文本的下方:
或刚好低于基准线,使其与文字降序符号冲突:
好的,我们都知道下划线仅应作为最后的手段使用,但是……如果要使用下划线,最常用的方法是什么?每种下划线样式的优缺点是什么?
Answers:
最常见的是什么?
好吧,一些印刷者会说,应该一起避免使用下划线,并且该下划线仅适用于打字机或网络上的超链接。但是,我要补充的是,创造力是指看到以创新方式打破规则的机会,因此,让您多少指导自己来决定。
在网络上,最常见的做法是将其恰好位于基准线以下,重叠的下降线。但这只是因为到目前为止,这一直是主要浏览器的默认渲染。
在打字机上,下划线与下划线重叠,但略有不同:它落在您的两个示例之间(示例)。如果查看下降器的基线,例如的底线g
或的底线p
(衬线字体),则是下划线所在的位置。因此,它“与”下降器的底部“相连”。
利弊
下划线与下划线重叠的好处是,它根本不会影响行距(或“前导”)-不必为了适应下划线而增加行间距。
如果这很重要,则完全清除后代的好处是可读性。但是您的缺点是需要增加行间距。如果您的情况仍然允许很多行距,那么一定要这样做。
如果您使用的是网络,则下划线与超链接紧密相关。因此,对于不属于链接的文本,应完全避免使用下划线。用其他方式表示您要表示的内容- 改为使用粗体,斜体或全大写。
我相信,所有带下划线的文字一般都很小,以至于读者之间不会存在差异。这是那些东西,设计师能照顾一个很大的事情,但读者永远不会做。在我看来,这完全是一种风格选择。
我更喜欢基线位置,text-decoration-skip: ink;
但在下降位置稍稍中断:即,但是,目前尚不真正支持。我到目前为止已经拥有两个类,并为后代添加了一个跨度以从中删除下划线。(通过php替换文本,因此无需创建太多代码)。
由于偏移,我将永远不会使用border-bottom技巧(或bottom属性)。我发现,与读者们相比,下划线的偏移量对他们的干扰远不止于此。
我尝试改用粗体,斜体,粗体斜体或颜色变化,而不是尽可能加下划线。
text-decoration-skip: ink;
和(b)不必将您的下划线放置在下降器底部下方而+1 。
CSS 2.1规范中的描述text-decoration: underline
将其效果定义为带底线,没有详细信息,但浏览器将其效果显示为略低于基线。因此,它经常剪切下级字母(和位于字母下方的音标)。
在CSS3 Text草案中,有这个text-underline-position
位置,但是似乎没有任何浏览器支持它。(根据css666.com info,它受IE支持,但至少在IE 9上,该支持似乎仅限于识别属性并接受值auto
(即初始值),因此它实际上不受支持。)更新:实际上,IE(第6版)提供了更多支持,但实际上,您可以将下划线放在文本(!)上方而不是其下方。
如Scott的回答和Joonas的评论中所述,您可以使用底部边框模拟下划线,然后可以很好地控制“下划线”样式。例如,这可能适用于单独站立而不是内联的带下划线的链接。对于内联文本,您可能希望在其中加下划线,例如,因为您正在对包含下划线的HTML尺寸的印刷品进行下划线,因此通常的CSS下划线可能会更好-因为此类下划线或多或少与印刷传统相对应。