摘要:學(xué)習(xí)之按鈕篇如我上一篇學(xué)習(xí)之里面,介紹了的目錄結(jié)構(gòu),說明了在這個(gè)文件里面,定義了主題色,也包括了按鈕的主題色。偽連接,按鈕的樣式顯示為連接的樣式。接下來的安排,自己寫的文章自己也會(huì)去實(shí)現(xiàn)它,另外關(guān)于的學(xué)習(xí)也不會(huì)停止。
less學(xué)習(xí)之Bootstrap按鈕篇)
如我上一篇less學(xué)習(xí)之Bootstrap里面,介紹了Bootstrap的目錄結(jié)構(gòu),說明了在variables.less這個(gè)文件里面,定義了主題色,也包括了按鈕的主題色。接下來看一看 buttons.less與 mixins/buttons.less.
文件 buttons.less 與 mixins/buttons.less內(nèi)容不是很多,總結(jié)下來就是:
1、“.btn”的基礎(chǔ)樣式定義。
2、按鈕的各種狀態(tài)含義的樣式定義,例如:btn-primary、btn-success等。
3、偽連接,按鈕的樣式顯示為連接的樣式。
4、按鈕尺寸的class:lg、sm、xs。
5、input類型的按鈕定義。
基礎(chǔ)樣式定義 代碼:.btn { display: inline-block; ... ... &, &:active, &.active { &:focus, &.focus { .tab-focus(); } } ... ...// 余下的為hover、disabled時(shí)的樣式 }說明:
知識(shí)點(diǎn)1:`&`在less與scss的語法中,表示同父級(jí),就上一個(gè)例子來說,就是編譯之后`&`將會(huì)被`.btn`替換,如果是多層時(shí)也是相同的道理。 提示1:運(yùn)用了函數(shù)tab-focus。此函數(shù)定義在mixins/tab-focus.less中,代碼很短 .tab-focus() { outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } 修改瀏覽器默認(rèn)的大綱樣式:表現(xiàn)在按鈕、form表單等原生組件上。 提示2: 運(yùn)用了函數(shù)user-select。此函數(shù)定義在mixins/vendor-prefixes中。 .user-select(@select) { -webkit-user-select: @select; -moz-user-select: @select; -ms-user-select: @select; // IE10+ user-select: @select; } 作用,讓文本是否能夠選擇。 提示3: 運(yùn)用了函數(shù)opacity。此函數(shù)定義在mixins/opacity中。 .opacity(@opacity) { opacity: @opacity; @opacity-ie: (@opacity * 100); filter: ~"alpha(opacity=@{opacity-ie})"; } 此處做了IE的兼容IE,IE的透明度采用 filtger:alpha(opacity=value),其中 0 <= value && value <= 100. 符號(hào)“~”,可以意為JavaScript里面的 evel ,可以將字符串轉(zhuǎn)化為表達(dá)式。所以說一些復(fù)雜的選擇器也能夠作為變量定義。特別說明
Bootstrap里面抽象出來的函數(shù),作用于按鈕不同狀態(tài)下的顏色變化。例如:hover、focus、active等狀態(tài)。
函數(shù)說明
參數(shù):@color; @background; @border // 分別時(shí)字體顏色、背景顏色、邊框顏色
結(jié)構(gòu)如下:
.button-variant(@color; @background; @border) { color: @color; background-color: @background; border-color: @border; &:focus, &.focus { color: @color; background-color: darken(@background, 10%); border-color: darken(@border, 25%); } ... ...// 余下的為hover、disabled時(shí)的樣式 .badge { color: @background; background-color: @color; } }
由上面兩個(gè)文件可以總結(jié)出的結(jié)論是:.less里面寫的是選擇器定義、變量定義,而mixins/.less里面寫的是函數(shù)。
本篇總結(jié)關(guān)于Bootstrap聽到過不少的見聞,有好有壞,我有身邊也有人說這個(gè)框架很垃圾。但是對(duì)于Bootstrap這個(gè)框架怎么樣,我不做評(píng)價(jià),但是Bootstrap用來作為學(xué)習(xí)的資料時(shí)非常合適的,Less的語法糖都了知道,那么如何才能讓Less用起來得心應(yīng)手?無疑,源碼是一種途徑。
接下來的安排,自己寫的文章自己也會(huì)去實(shí)現(xiàn)它,另外關(guān)于Less的學(xué)習(xí)也不會(huì)停止。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/117270.html
摘要:學(xué)習(xí)筆記之目錄說明源代碼里面的目錄是這樣的只給出部分文件顧名思義,為整個(gè)定義的全局變量。定義在中使用的灰色和品牌顏色。這部分定義的主要色成功失敗警告等等。之后也定義了默認(rèn)背景色。 less學(xué)習(xí)筆記之bootstrap 目錄說明 源代碼里面的目錄是這樣的(只給出部分): .csscomb.json │ .csslintrc │ alerts.less │ badges.less ...
摘要:本次主要分享關(guān)于上一篇區(qū)域的學(xué)習(xí)。區(qū)域?yàn)榈暮诵牟糠郑慕Y(jié)構(gòu)如下為了便于梳理思路,以上代碼省略了細(xì)節(jié),只保留了輪廓脈絡(luò)。最終暴露給開發(fā)者的如下圖所示這里只分析了區(qū)域的結(jié)構(gòu),下一次會(huì)深入到函數(shù)語句粒度。 本次主要分享關(guān)于上一篇區(qū)域2的學(xué)習(xí)。區(qū)域2為Zepto的核心部分,它的結(jié)構(gòu)如下 var Zepto = (function() { var $, zepto = {}; fu...
閱讀 2705·2021-11-08 13:16
閱讀 2382·2021-10-18 13:30
閱讀 2254·2021-09-27 13:35
閱讀 2009·2019-08-30 15:55
閱讀 2457·2019-08-30 13:22
閱讀 597·2019-08-30 11:24
閱讀 2090·2019-08-29 12:33
閱讀 1824·2019-08-26 12:10