使用css實現(xiàn)條紋背景

最近在看css一姐的《CSS SECRETS》蝙泼,收獲很多谣辞,墻裂推薦給大家迫摔。文中的很多技巧也來自于一姐~

條紋背景在生活中算是一個比較常見的事物,比如地板泥从,包裝紙等句占。這種設(shè)計在網(wǎng)頁中要如何實現(xiàn)呢?
我們首先應(yīng)該知道linear-gradient屬性中顏色后是可以加length或者percentage參數(shù)的躯嫉,表示漸變的起止點纱烘,這意味著什么呢?

background: linear-gradient(greenyellow 30%,#58a 60%)

如下效果:

linear_gradient_test.png

可以看到祈餐,漸變的區(qū)域已經(jīng)很小了擂啥。

那么如果起止點的值相等呢?帆阳!
沒錯哺壶,如果起止點相等,那么漸變區(qū)域就消失了

background: linear-gradient(greenyellow 30%,#58a 30%)
linear_gradient_test2.png

如此舱痘,圖像有了变骡,按照我們背景圖片重復(fù)渲染的思維离赫,把這個圖像當(dāng)做貼片進行渲染芭逝,即配合上background-size屬性,也就實現(xiàn)了條紋:

background: linear-gradient(greenyellow 50%,#58a 50%);
background-size:100% 30px;
strip_bg_01.png

三色也是可以的渊胸,只需要繼續(xù)在linear-gradient后添加屬性即可:

background: linear-gradient(greenyellow 33.3%,#58a 33.3%,#58a 66.6%,red 66.6%);
background-size:100% 30px旬盯;

目前為止我們每次修改各條紋寬度的占比都需要修改2個值,這里有一個小技巧翎猛,把后者設(shè)置為0胖翰。它基于一個CSS規(guī)范,如果某個色標(biāo)的位置值比列表中它之前色標(biāo)的位置值都小切厘,則該色標(biāo)的位置值會被設(shè)置為之前色標(biāo)位置值的最大值萨咳。
上面的三色條紋可改寫為:

background: linear-gradient(greenyellow 33.3%,#58a 0,#58a 66.6%,red 0);
background-size:100% 30px;

垂直條紋

有了之前的鋪墊疫稿,垂直條紋對你來說應(yīng)該就很簡單了培他。只需要改變漸變的方向,然后再修改一下background-size的值就可以了遗座。

background: linear-gradient(to left, greenyellow 50%,#58a 0);
background-size:30px 100%;
vertical_strip.png

斜向條紋

上面的方式用來實現(xiàn)斜向的條紋就比較困難了舀凛。你可能會想,為什么會麻煩呢途蒋?修改linear-gradient的方向不就行了嗎猛遍?像這樣:

background:linear-gradient(45deg,greenyellow 50%,#58a 50%);
background-size:42px 42px;
first_try.png

很明顯我們失敗了。但是可以看出這個條紋是可控的,上面我們也說過懊烤,linear-gradient生成的是圖片梯醒,我們將之當(dāng)作貼片,那么怎樣的貼片可以拼出斜向條紋呢腌紧?
這樣:


strip_card.png

于是我們可以修改代碼為:

background:linear-gradient(45deg,greenyellow 25%,#58a 0,#58a 50%,
                            greenyellow 0,greenyellow 75%,#58a 0);
background-size:42px 42px;
italic_strip.png

這樣的實現(xiàn)方式其實有很大的缺陷冤馏,比如如果我們想實現(xiàn)一個傾斜60度的斜向條紋,你可以試試寄啼,它就無能為力了逮光。

當(dāng)然,我既然說出來了墩划,自然就有其它的解決方案涕刚。
linear-gradient擁有一個循環(huán)加強版本=>repeating-linear-gradient。它和前者的不同在于乙帮,色標(biāo)將會無限循環(huán)重復(fù)杜漠。
比如這樣一句代碼:

background:repeating-linear-gradient(#fff,#000 30px);

它相當(dāng)于:

background:linear-gradient(#fff,#000 30px,
            #fff 30px,#000 60px,
            #fff 60px,### 90px,
            ...)

加一個角度:

background:repeating-linear-gradient(60deg,#fff,#000 30px);
repeating_italic_try.png

很棒,我們快要接近正確答案了察净,現(xiàn)在只需要把我們之前消除漸變的技巧加入即可:

background:repeating-linear-gradient(60deg,greenyellow, greenyellow 15px,
            #58a 0,#58a 30px);
background-size:42px 42px;

見證奇跡吧:

italic_strip_final.png

這種方法最大的優(yōu)勢是現(xiàn)在我們可以隨意修改條紋的角度了驾茴,而且修改方式非常清晰簡單。

還有個補充氢卡,有時候其實漸變的顏色間可能是相同顏色明暗差異锈至,即同色系,這樣的情況我們用上面的方法要寫兩個顏色译秦,很明顯不是最好的解決方案峡捡。我們可以通過在背景色上渲染條紋式的半透明的白色條紋來實現(xiàn):

background:#58a;
background-image: repeating-linear-gradient(60deg,rgba(255,255,255,.1),rgba(255,255,255,.1) 15px, 
                    transparent 0,transparent 30px);
same_color_strip.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市筑悴,隨后出現(xiàn)的幾起案子们拙,更是在濱河造成了極大的恐慌,老刑警劉巖阁吝,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件砚婆,死亡現(xiàn)場離奇詭異,居然都是意外死亡突勇,警方通過查閱死者的電腦和手機装盯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來与境,“玉大人验夯,你說我怎么就攤上這事∷さ螅” “怎么了挥转?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我绑谣,道長党窜,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任借宵,我火速辦了婚禮幌衣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘壤玫。我一直安慰自己豁护,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布欲间。 她就那樣靜靜地躺著楚里,像睡著了一般。 火紅的嫁衣襯著肌膚如雪猎贴。 梳的紋絲不亂的頭發(fā)上班缎,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天,我揣著相機與錄音她渴,去河邊找鬼达址。 笑死,一個胖子當(dāng)著我的面吹牛趁耗,可吹牛的內(nèi)容都是我干的沉唠。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼对粪,長吁一口氣:“原來是場噩夢啊……” “哼右冻!你這毒婦竟也來了装蓬?” 一聲冷哼從身側(cè)響起著拭,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎牍帚,沒想到半個月后儡遮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡暗赶,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年鄙币,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蹂随。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡十嘿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出岳锁,到底是詐尸還是另有隱情绩衷,我是刑警寧澤,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站咳燕,受9級特大地震影響勿决,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜招盲,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一低缩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧曹货,春花似錦咆繁、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蜕衡,卻和暖如春壤短,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背慨仿。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工久脯, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人镰吆。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓帘撰,卻偏偏與公主長得像,于是被迫代替她去往敵國和親万皿。 傳聞我的和親對象是個殘疾皇子摧找,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 所有圖都在body背景設(shè)置為green下的截圖,請不要把最外層的綠色當(dāng)成邊框 半透明邊框 如果我們想給一個容器設(shè)置...
    hcxowe閱讀 3,890評論 0 6
  • 在用CSS實現(xiàn)等效中牢硅,經(jīng)常會用到漸變蹬耘,所以,本篇就研究一下漸變的特性减余; 在CSS中综苔,漸變并不是作為CSS中的一個屬...
    科研者閱讀 656評論 0 3
  • -webkit-linear-gradient線形漸變詳解 CSS3發(fā)布很久了,現(xiàn)在在國外的一些頁面上常能看到他的...
    魏魏魏_1500閱讀 15,573評論 0 3
  • 主要使用的屬性 linear-gradient 取消中間的漸變過度 如果多個色標(biāo)具有相同的位置值(就是顏色后面跟的...
    Tiny_z閱讀 3,135評論 0 6
  • 2016年最后一個工作日位岔,還是想對即將過去的一年做個總結(jié)如筛,也想好好展望下2017年。這一年來抒抬,我的生活總體上是陰雨...
    門前池塘閱讀 220評論 0 0