巧用CSS自定义网页下划线样式

CSS为网页设计者们提供了丰富而灵活的页面元素表现形式的控制手段。但是,或许你可能注意到了,对于下划线,CSS提供的可选操作却不是很多。一般情况下,人们看到的下划线基本上都是横直线,缺少生气和灵动。不过,路并不是死的,通过一些绝妙的改造,我们还是可以做出富有创意的下划线来使页面更为美观。
 
  这是一个自定义下划线的例子:自定义的下划线 。是不是很酷呢?除了能让你的网页呈现出一个与众不同的风格之外,它还能对于文档中不同的文字类型给与不同的视觉外观,起到提醒或者着重的作用。
 
  下面我们就来一起学习如何自定义与众不同的下划线。
 
  首先,我们得先准备一幅作为下划线的图片。你可以利用先成的,也可以自己动手绘制。需要提醒注意的是,你所准备的图片应该适合水平方向上的重复,最好还能使透明的GIF格式,这样能够确保背景不被遮挡。
 
  另外,如果你所准备的下划线图片在高度(粗细)上占用比较多的像素,那么,应当增加该行文本和下行文本之间的行距(line-height)空间,可以这么设定:

p { line-height: 1.5; }
接下来要做的事情是取消原来默认的下划线,这样我们才能把自定义的下划线应用到指定文本,使用如下的CSS设定(它的含义是让超链接文字没有任何修饰):

a { text-decoration: none; }
好了,现在可以来创建自定义的下划线了,这里,我们用准备的图片设定为超链接元素的背景图片,如下:

a { background-image: url(underline.gif); }
当然,文字的长度未必和原图的长度相等,这就需要考虑图片重复的问题,也就是说,应当把重复限定在水平方向的X轴上,可以如下设定:

a { background-repeat: repeat-x; }
还有个必须考虑的问题,就是字的大小改变怎么办?要让下划线的图片始终显示在超链接文字的下方,而不必理会文字大小的话,我们应当使用CSS中的背景位置(background-position)属性来定位图片位于超链接元素色底部。而对于如箭头这样的下划线图片,还得考虑超链接的文本边缘和图片边对齐。
 下面的这个例子将下划线背景图片的位置限定在右下角:

a { background-position: 100% 100%; }
如何控制自定义的下划线图片和文字之间的空白呢?这个可以通过增加填充(padding)来做到。下划线图片相对于超链接文本基线(baseline)的确切位置以来与所用的字的大小。建议你一开始将底部填充(bottom-padding)的大小设定同下划线图片的高度相等,然后再慢慢调整到合适位置(下面这个CSS设定超链接的底部填充为4像素):

a { padding-bottom: 4px; }

时间: 2024-10-03 12:01:57

巧用CSS自定义网页下划线样式的相关文章

巧妙利用CSS自定义网页下划线样式

css|网页 CSS为网页设计者们提供了丰富而灵活的页面元素表现形式的控制手段.但是,或许你可能注意到了,对于下划线,CSS提供的可选操作却不是很多.一般情况下,人们看到的下划线基本上都是横直线,缺少生气和灵动.不过,路并不是死的,通过一些绝妙的改造,我们还是可以做出富有创意的下划线来使页面更为美观. 这是一个自定义下划线的例子:自定义的下划线 .是不是很酷呢?除了能让你的网页呈现出一个与众不同的风格之外,它还能对于文档中不同的文字类型给与不同的视觉外观,起到提醒或者着重的作用. 下面我

利用CSS,链接下划线也玩自定义

css|链接 由 A List Apart 杂志及作者授权翻译.(Translated with the permission of A List Apart Magazine and the author[s].) 说明:文章中"[补充]"内容系译者所补充添加(来自 CSS 2.0 中文手册),目的是方便读者理解相关内容. 虽然网页设计师通常有大量的方法控制文档如何呈现,但是基本的CSS不能为页面中链接下方的下划线样式提供很多选择.不过只需一点小技巧,你就能获得链接样式显示方式的创作

利用CSS,链接下划线也玩自定义_CSS/HTML

原文链接:CSS Design: Custom Underlines 由 A List Apart 杂志及作者授权翻译.(Translated with the permission of A List Apart Magazine and the author[s].) 说明:文章中"[补充]"内容系译者所补充添加(来自 CSS 2.0 中文手册),目的是方便读者理解相关内容. 虽然网页设计师通常有大量的方法控制文档如何呈现,但是基本的CSS不能为页面中链接下方的下划线样式提供很多选

Android如何自定义EditText下划线?_Android

曾经做过一个项目,其中登录界面的交互令人印象深刻.交互设计师给出了一个非常作的设计,要求做出包含根据情况可变色的下划线,左侧有可变图标,右侧有可变删除标志的输入框,如图 记录制作过程: 第一版本 public class LineEditText extends EditText { private Paint mPaint; private int color; public static final int STATUS_FOCUSED = 1; public static final in

CSS中的下划线text-decoration属性使用进阶

  定义和用法 text-decoration 属性规定添加到文本的修饰. 注释:修饰的颜色由 "color" 属性设置. 说明 这个属性允许对文本设置某种效果,如加下划线.如果后代元素没有自己的装饰,祖先元素上设置的装饰会"延伸"到后代元素中.不要求用户代理支持 blink. 默认值: none 继承性: no 可能的值 none 默认.定义标准的文本. underline 定义文本下的一条线. overline 定义文本上的一条线. line-through 定

CSS文字颜色不变下划线变颜色的实现

这里我们对3组文字设置三种不同颜色下划线,分别css命名为".divcss5-F00".".divcss5-00F".".divcss5-333" 二.使用css border实现字体下划线为实线还是虚线 - TOP 1.字体下划线颜色不同实现完整HTML源代码: <!DOCTYPE html>  <html>  <head>  <meta http-equiv="Content-Type&qu

Android如何自定义EditText下划线?

曾经做过一个项目,其中登录界面的交互令人印象深刻.交互设计师给出了一个非常作的设计,要求做出包含根据情况可变色的下划线,左侧有可变图标,右侧有可变删除标志的输入框,如图 记录制作过程: 第一版本 public class LineEditText extends EditText { private Paint mPaint; private int color; public static final int STATUS_FOCUSED = 1; public static final in

Android 如何自定义EditText 下划线?

项目要求:  笔者曾经做过一个项目,其中登录界面的交互令人印象深刻.交互设计师给出了一个非常作的设计,要求做出包含根据情况可变色的下划线,左侧有可变图标,右侧有可变删除标志的输入框,如图  记录制作过程: 第一版本 public class LineEditText extends EditText { private Paint mPaint; private int color; public static final int STATUS_FOCUSED = 1; public stati

PHP面试题之驼峰字符串转换成下划线样式例子

自己在看到这个问题的时候,想到的是用ASCII码来处理,没往万能的正则上去想.好吧,下面来看看答案: 答案1:  代码如下 复制代码 $str = 'OpenAPI'; $length = mb_strlen($str); $new = ''; for($i = 0; $i < $length; $i++) {  $num = ord($str[$i]);  $pre = ord($str[$i - 1]);  $new .= ($i != 0 && ($num >= 65 &