<strike id="cy2gs"><menu id="cy2gs"></menu></strike>
  • <del id="cy2gs"><dfn id="cy2gs"></dfn></del>
  • 實(shí)現(xiàn)下劃線的N個(gè)姿勢

    2016-12-11    濤濤

    如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請點(diǎn)這里

    下劃線 一般在文檔中常被用作增強(qiáng)注意,在過去打字機(jī)時(shí)代,下劃線成為了唯一的一種文字強(qiáng)調(diào)方式,具體的操作方法是在已經(jīng)打出來的文字上面退格,再在同樣的地方打出下劃線。

    6ea88684a5fb5ea76d23e88424100b431479825736

    而在網(wǎng)頁中,可以鏈接的文字(超鏈接)下面一般都有下劃線。在制作頁面的時(shí)候,當(dāng)鏈接需要下劃線的時(shí)候,UI開發(fā)很自然的會想到使用text-decoration屬性來顯示,例如這樣:

    1479825410_16_w650_h150

    以上顯示的是設(shè)計(jì)稿和瀏覽器渲染的實(shí)際效果,我們會發(fā)現(xiàn)瀏覽器渲染的效果和設(shè)計(jì)稿有出入,主要表現(xiàn)在下劃線的位置,這時(shí)候細(xì)心的設(shè)計(jì)師會要求你想辦法實(shí)現(xiàn)他們本來想要實(shí)現(xiàn)的效果。可惜的是,在這幾年的網(wǎng)頁排版技術(shù)發(fā)展中,并沒有更好的css屬性出現(xiàn)來支持下劃線的個(gè)性化設(shè)置,所以這個(gè)問題常常會被忽略。

    這個(gè)一般在UI開發(fā)看來,可能覺得并沒有什么問題,難道說不應(yīng)該使用text-decoration這個(gè)屬性嗎?

    首先我們還是從實(shí)際想要表現(xiàn)的效果來說:

    • 能夠支持換行
    • 能夠改變顏色、線條樣式和粗細(xì)
    • 能夠被其它元素正常的包裹
    • 在所有瀏覽器都能正常顯示

    以上特性其實(shí)text-decoration都只是部分實(shí)現(xiàn),尤其是在表現(xiàn)的細(xì)節(jié)上讓人覺得有些瑕疵,如果我們非要吹毛求疵,應(yīng)該怎么辦呢?

    那么,我們還有什么其它方法可以去嘗試嗎?

    以下是我列舉的一些方案,我們一個(gè)個(gè)的來看:

    • text-decoration
    • border-bottom
    • text-shadow
    • box-shadow
    • linear-gradient
    • text-decoration-*
    • background-image

    首先,我們先來看看text-decoration這個(gè)屬性,w3c給它的定義的是允許對文本設(shè)置某種效果,比如加下劃線,但是缺點(diǎn)是,不能自定義樣式,比如下劃線的顏色,線條的粗細(xì),都不可以自定義。

    代碼:

    1479288001_37_w600_h200

    預(yù)覽:1479825449_87_w600_h100

    border-bottom本來是用來設(shè)置元素下邊框樣式的,我們可以拿來方便的自定義下劃線的顏色,粗細(xì),距離。

    代碼:1479294387_56_w600_h440
    預(yù)覽:1479825577_9_w610_h300

    同樣,我們還可以嘗試使用text-shadow,這個(gè)屬性不僅能應(yīng)用陰影文本,還可以用來模擬下劃線的效果:

    代碼:1479296954_16_w600_h300

    預(yù)覽:1479825527_5_w579_h128

    可是好像依然不支持換行,如果是單行文本的情況下可以考慮使用。

    那是不是不可以使用呢?其實(shí)我們還有box-shadow,不僅能夠給元素添加陰影:

    代碼:1479297393_5_w600_h788

    預(yù)覽:1479825577_9_w610_h300

    其實(shí),我們也可以通過text-decoration-style來設(shè)置下劃線的,比如它專有的幾個(gè)屬性:

    • text-decoration-color
    • text-decoration-skip
    • text-decoration-style

    我們可以使用text-decoration-color來設(shè)置下劃線的顏色,這樣終于不用像之前,下劃線顏色總是跟隨于文本顏色

    1479825650_59_w596_h208

    text-decoration-skip屬性,表示當(dāng)字符和下劃線發(fā)生重疊的時(shí)候,是跳過文字字符,還是直接貫穿:

    1479825676_94_w782_h254

    還可以通過text-decoration-style設(shè)置線條的樣式,比如solid(實(shí)線)、double(雙線)、dotted(點(diǎn)狀線條)、dashed(虛線)、wavy(波浪線);

    好吧,可惜的是,目前text-decoration-*只有火狐支持這些屬性,就連我們常用的Chrome也都不支持,如果非要支持的話,還需要手動(dòng)開啟"實(shí)驗(yàn)性網(wǎng)絡(luò)平臺功能"才可以。

    1479193378_93_w1295_h282

    以上嘗試,雖然在一定程度上呈現(xiàn)我們想要的效果,但是都受限于瀏覽器的兼容性問題,那么是不是沒有別的選擇呢?

    總結(jié):

    如果只是單純的線條樣式的話,我們可以直接使用背景漸變的方法linear-gradient制作下劃線,比如這樣,當(dāng)然如果你只需要支持的瀏覽器版本,

    代碼:1479302313_65_w600_h675

    預(yù)覽:1479825702_7_w428_h223

    所以,如果我們要考慮所有的瀏覽器都要正常顯示,并且對線條樣式有特殊要求,比如曲線或者下面這種更特殊的線條背景,我們還是直接使用固定的圖片背景定位background-image來平鋪的好。

    代碼:1479304215_86_w600_h271

    預(yù)覽:1479825725_33_w614_h289

    最后

    先寫到這!大致梳理了一下幾種實(shí)現(xiàn)下劃線的方法,在特殊的場景下雖然都各自的優(yōu)缺點(diǎn),希望能夠給大家提供一些思路

    謝謝大家的閱讀 e100

    藍(lán)藍(lán)設(shè)計(jì)www.skdbbs.com )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 平面設(shè)計(jì)服務(wù)

    日歷

    鏈接

    個(gè)人資料

    存檔

    主站蜘蛛池模板: 毛片a精品**国产| 熟妇无码乱子成人精品| 亚洲人成国产精品无码| 久久国产精品久久| 亚洲欧美精品SUV| 国产精品原创巨作?v网站| 国产精品久久精品| 亚洲精品一品区二品区三品区| 国产精品亚洲二区在线观看| 99久久精品国产麻豆| 亚洲精品乱码久久久久久久久久久久| 国产精品熟女福利久久AV| 国产精品无码A∨精品影院| 一本色道久久88综合日韩精品| 国产小呦泬泬99精品| 91av国产精品| 国产精品福利电影一区二区三区四区欧美白嫩精品 | 国产福利电影一区二区三区,亚洲国模精品一区 | 99久久精品国产高清一区二区| 亚洲精品无码成人AAA片| 久草热8精品视频在线观看| 精品乱码久久久久久夜夜嗨| 久久99国产精品久久久| 成人区精品一区二区不卡| 日韩精品极品视频在线观看免费| 亚洲国产高清精品线久久 | 国产精品日韩欧美制服| 精品久久人妻av中文字幕| 久久精品国产亚洲av高清漫画| 亚洲AV永久无码精品一百度影院| 亚洲精品尤物yw在线影院| 亚洲国产精品激情在线观看| 亚洲精品无码专区在线播放| 免费精品久久久久久中文字幕 | 久久中文精品无码中文字幕| 黑人巨大精品欧美一区二区| 国产精品福利片免费看 | 99久久99久久精品国产片| 91精品在线国产| 国产高清在线精品一本大道国产| 国产国拍亚洲精品福利|