原文作者:Stuart Robertson
原文鏈接:CSS Design: Custom Underlines
由 A List Apart 雜志及作者授權(quán)翻譯。(Translated with the permission of A List Apart Magazine and the author[s].)
說明:文章中“[補充]”內(nèi)容系譯者所補充添加(來自 CSS 2.0 中文手冊),目的是方便讀者理解相關內(nèi)容。
雖然網(wǎng)頁設計師通常有大量的方法控制文檔如何呈現(xiàn),但是基本的CSS不能為頁面中鏈接下方的下劃線樣式提供很多選擇。不過只需一點小技巧,你就能獲得鏈接樣式顯示方式的創(chuàng)作控制。
自定義下劃線給一些合適的網(wǎng)站以新的創(chuàng)作機會。自定義下劃線還能夠被用于為包含在同一個頁面中的不同鏈接提供額外的視覺線索。
你應該從為你下劃線創(chuàng)建圖形開始。該圖將會水平的重復,而如果你希望(網(wǎng)頁)背景能夠完全顯示的話,你需要創(chuàng)建一個透明的.gif文件。
如果你的下劃線圖形有幾像素高,那么你應該增加的文本的line-height(行距),以增加上一行底部與下一行頂部的之間的空間。
p { line-height: 1.5; }
-------------------------------------------------
[補充]
語法:
line-height : normal | length
取值:
normal :? 默認值。默認行高
length :? 百分比數(shù)字 | 由浮點數(shù)字和單位標識符組成的長度值,允許為負值。其百分比取值是基于字體的高度尺寸。請參閱 長度單位
說明:
檢索或設置對象的行高。即字體最底端與字體內(nèi)部頂端之間的距離。
行高是字體下延與字體內(nèi)部高度的頂端之間的距離。為負值的行高可用來實現(xiàn)陰影效果。
假如一個格式化的行包括不止一個對象,則最大行高會被應用。在這種情況下,此屬性不可以為負值。
此屬性對于 currentStyle 對象而言是只讀的。對于其他對象而言是可讀寫的。
對應的腳本特性為 lineHeight 。
-------------------------------------------------
a { text-decoration: none; }
-------------------------------------------------
[補充]
語法:
text-decoration : none || underline || blink || overline || line-through
取值:
none :? 默認值。無裝飾
blink :? 閃爍
underline :? 下劃線
line-through :? 貫穿線
overline :? 上劃線
說明:
檢索或設置對象中的文本的裝飾。
有 href 特性的 a ,以及 u , ins 對象默認值為 underline 。
對象 strike , s , del ,默認值是 line-through 。
假如 none 值在屬性聲明的最后,所有的先前的其他取值都會被清除。例如,聲明 text-decoration: underline overline blink none 等于聲明 text-decoration: none 。
假如對象沒有文本(如 img 元素)或者是空元素(如:<EM></EM>), 此屬性不會發(fā)生作用。
假如你設置 body 對象的此屬性值為 none , a 對象將依然保持其原有的下劃線樣式。除非你針對 a 對象聲明此屬性值。
指定塊對象的此屬性將影響其所有內(nèi)聯(lián)子對象。而此影響一旦發(fā)生,塊對象容器最終會受到影響。
在IE4+中可用的值為 overline 和 blink 。雖然 blink 值被提供,但它不會被作用。
此屬性對于 currentStyle 對象而言是只讀的。對于其他對象而言是可讀寫的。
對應的腳本特性為 textDecoration 。
-------------------------------------------------
為了創(chuàng)建自定義的下劃線,我們?yōu)殒溄釉卦O置背景圖像:
a { background-image: url(underline.gif); }
-------------------------------------------------
[補充]
語法:
background-image : none | url ( url )
取值:
none :? 默認值。無背景圖
url ( url ) :? 使用絕對或相對 url 地址指定背景圖像
說明:
設置或檢索對象的背景圖像。
當背景圖像與背景顏色( background-color )都被設定了時,背景圖片將覆蓋于背景顏色之上。
此屬性對于 currentStyle 對象而言是只讀的。對于其他對象而言是可讀寫的。
對應的腳本特性為 backgroundImage 。
-------------------------------------------------
我們希望這個圖像在文本底部順著水平方向重復而不是垂直方向,否則它就將顯示在鏈接文本自身的后面。我們限制背景圖像沿著X軸重復:
a { background-repeat: repeat-x; }
-------------------------------------------------
[補充]
語法:
background-repeat : repeat | no-repeat | repeat-x | repeat-y
取值:
repeat :? 默認值。背景圖像在縱向和橫向上平鋪
no-repeat :? 背景圖像不平鋪
repeat-x :? 背景圖像僅在橫向上平鋪
repeat-y :? 背景圖像僅在縱向上平鋪
說明:
設置或檢索對象的背景圖像是否及如何鋪排。必須先指定對象的背景圖像( background-image )。
此屬性對于 currentStyle 對象而言是只讀的。對于其他對象而言是可讀寫的。
對應的腳本特性為 backgroundRepeat 。
-------------------------------------------------
不管字體的大小如何,為了保證我們的圖像都出現(xiàn)在鏈接文本的下面,我們將要使用background-position(背景定位)屬性定位圖像至鏈接元素的底部。對于某些背景圖形,例如箭頭,對圖像對齊元素的哪一邊,你或許有自己的偏好。就我們這個例子而言,我們將背景置于底部的右邊:
a { background-position: 100% 100%; }
-------------------------------------------------
[補充]
語法:
background-position : length || length
background-position : position || position
取值:
length :? 百分數(shù) | 由浮點數(shù)字和單位標識符組成的長度值。請參閱 長度單位
position :? top | center | bottom | left | center | right
說明:
設置或檢索對象的背景圖像位置。必須先指定 background-image 屬性。
該屬性定位不受對象的補丁屬性( padding )設置影響。
默認值為: 0% 0% 。此時背景圖片將被定位于對象不包括補丁( padding )的內(nèi)容區(qū)域的左上角。
如果只指定了一個值,該值將用于橫坐標。縱坐標將默認為 50% 。如果指定了兩個值,第二個值將用于縱坐標。
如果設置值為 right center ,因為 right 作為橫坐標值將會覆蓋 center 值,所以背景圖片將被居右定位。
對應的腳本特性為 backgroundPosition 。
-------------------------------------------------
為了給鏈接文本正文的自定義下劃線圖形創(chuàng)建空間,我們將增加一些padding(填充)。依賴于所使用字體的大小,下劃線圖形的精確位置將會相對于鏈接文本的基線發(fā)生改變。建議你從bottom-padding開始,與下劃線圖形高度同高,調(diào)整以適合于你的需要:
a { padding-bottom: 4px; }
-------------------------------------------------
[補充]
語法:
padding-bottom : length
取值:
length :? 由浮點數(shù)字和單位標識符組成的長度值 | 或者百分數(shù)。百分數(shù)是基于父對象的寬度。不允許負值。
說明:
檢索或設置對象底邊的內(nèi)補丁。對于 td 和 th 對象而言默認值為 1 。其他對象的默認值為 0 。
在IE5.5+中此屬性支持內(nèi)聯(lián)對象使用。而在此前的版本中,內(nèi)聯(lián)要素要使用該屬性,必須先設定對象的 height 或 width 屬性,或者設定 position 屬性為 absolute ,或者設定 display 屬性為 block 。
此屬性對于 currentStyle 對象而言是只讀的。對于其他對象而言是可讀寫的。
對應的腳本特性為 paddingBottom 。
-------------------------------------------------
這個 靜態(tài)的下劃線和這個翻轉(zhuǎn)效果可用于流行時尚設計。
寶貝,這個靜態(tài)下劃線和這個翻轉(zhuǎn)效果很帥吧。
這個靜態(tài)下劃線和這個動畫翻轉(zhuǎn)效果 可用于顯示外部鏈接
(動畫翻轉(zhuǎn)效果并非能在所有瀏覽器都顯示,例如Safari 1.0,只能顯示動畫的第一幀)。
新聞熱點
疑難解答